4-1 程序的分支结构
1.单分支结构
基本构成:
2.二分支结构
紧凑形式:
适用于简单表达式的二分支结构
guess = eval(input())
print("猜{}了".format("对" if guess==99 else "错")))
3.多分支结构
基本构成:
if <条件1> :
<语句块1>
elif <条件2> :
<语句块2>
……
else :
<语句块N>
score = eval(input())
if score >= 60:
grade = "D"
elif score >= 70:
grade = "C"
elif score >= 80:
grade = "B"
elif score >= 90:
grade = "A"
print("输入成绩属于级别{}".format(grade))
4.条件判断及组合
条件判断
条件组合
5.程序的异常处理
4.2身体质量指数BMI
代码:
#CalBMIv1.py
height, weight = eval(input("请输入身高(米)和体重(公斤)[逗号隔开]: "))
bmi = weight / pow(height, 2)
print("BMI 数值为:{:.2f}".format(bmi))
who = ""
if bmi < 18.5:
who = "偏瘦"
elif 18.5 <= bmi < 25:
who = "正常"
elif 25 <= bmi < 30:
who = "偏胖"
else:
who = "肥胖"
print("BMI 指标为:国际'{0}'".format(who))
4.3程序的循环结构
1.遍历循环
基本构成:
for <循环变量> in <遍历结构> :
<语句块>
从遍历结构中逐一提取元素,放在循环变量中
由保留字for和in组成,完整遍历所有元素后结束
每次循环,所获得元素放入循环变量,并执行一次语句块
计数循环:
for i in range(5):
print(i)
0
1
2
3
4
字符串遍历循环:
for c in "Python123":
print(c, end=",")
P,y,t,h,o,n,1,2,3,
列表遍历循环:
for item in ls :
<语句块>
ls是一个列表,遍历其每个元素,产生循环
文件遍历循环:
for line in fi :
<语句块>
fi是一个文件标识符,遍历其每行,产生循环
2.无限循环
由条件控制的循环运行方式
while <条件> :
<语句块>
反复执行语句块,直到条件不满足时结束
3.循环控制保留字
4.循环的高级用法
当循环没有被break语句退出时,执行else语句块
else语句块作为"正常"完成循环的奖励
这里else的用法与异常处理中else用法相似
4-4 random库的使用
1.基本随机函数
2.拓展随机函数
4.5圆周率的计算
蒙特卡罗方法:
#CalPiV2.py
from random import random
from time import perf_counter
DARTS = 1000*1000
hits = 0.0
start = perf_counter()
for i in range(1, DARTS+1):
x, y = random(), random()
dist = pow(x ** 2 + y ** 2, 0.5)
if dist <= 1.0:
hits = hits + 1
pi = 4 * (hits/DARTS)
print("圆周率值是: {}".format(pi))
print("运行时间是: {:.5f}s".format(perf_counter()-start))