'''
第四章程序的控制结构
一、程序的分支结构
1.单分支结构 if 条件:
2.二分支 if else
紧凑形式:适用于简单表达式的二分支结构 表达式1 if 条件 else 表达式2 不可以进行赋值
eg:guess = eval(input()) print("猜{}了".format(“对“ if guess ==99 else "错"))
3.多分支结构 if elif else
4.条件判断及组合 < > + =and or not
5.程序的异常处理 try 语句块1 except<异常类型> 语句块2 else 语句块3 finally 语句块4
二、实例五:身体质量指数BMI
#CaIBMIv3.py
height,weight = eval(input("请输入身高(m)和体重(公斤)[逗号隔开]:"))
bmi =weight / pow(height,2)
print("MBI 数值为:{:.2f}".format(bmi))
who,nat = "",""
if bmi <18.5:
who,nat = "偏瘦","偏瘦"
elif 18.5<=bmi<24:
who, nat = "正常", "正常"
elif 24<=bmi<25:
who, nat = "偏瘦", "偏胖"
elif 25<=bmi<28:
who, nat = "偏胖", "偏胖"
elif 28<=bmi<30:
who, nat = "偏胖", "肥胖"
else:
who, nat = "肥胖", "肥胖"
print("BMI指标为:国际'{0}',国内'{1}'".format(who,nat))
二、程序的循环结构
1.遍历循环: for 循环变量 in 遍历结构(计数循环 字符串遍历循环 列表循环 文件循环)
语句结构
2.无限循环 while 条件
语句结构
3.循环控制保留字
(1)break:跳出并结束当前整个循环,执行循环后的语句
(2)continue:结束当前循环 继续执行后续次数循环
(3)break和continue可以与while与for配合使用
4.循环的高级应用:循环与else
三、random库
1.random库的基本介绍
(1)random随机数的标准库 梅森旋转算法 import random
(2)二类函数:8个
基本随机数函数:seed(),random()
扩展随机数函数:randint(),getrandbits(),uniform(),randrange(),shuffle()
2.基本随机数函数seed()种子数
3.扩展随机数函数
(1)randint(a,b)生成一个[a,b]之间的整数
(2)randrange(m,n[,k])生成一个(m,n)之间以步长为k的随机整数
(3)getrandbits(k)生成一个比特长k的随机整数
(4)uniform(a,b)生成一个[a,b]之间的随机小数
(5)chioce(seq)从序列seq中随机选择一个元素
(6)shuffle(seq)将序列seq中元素随机排列,返回打乱后的序列
四、实例六:圆周率的计算
#CalPiV。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()))
'''