python 程序的控制
单分支结构
if <条件> : <语句块>
1 | if a == 99: |
二分支结构
if <条件> :
<语句块>
else :
<语句块 2>
1 | if a == 99: |
紧凑形式:适用于表达简单的二分支结构
<表达式 1> if <条件> else <表达式 2>
1 | print('猜{}了'.format('对' if a == 99 else '错')) |
多分支结构
if <条件> :
<语句块 1>
elif :
<语句块 2>
…
else :
<语句块 3>
条件判断操作符
1 | < |
用于条件组合的三个保留字
x and y :两个条件 x 和 y 的逻辑与
x or y :两个条件 x 和 y 的逻辑或
not x :条件 x 的逻辑非
1 | if a == 99 or a < 99: |
程序的异常处理
异常处理的基本处理:
try :
<语句块 1>
except :
<语句块 2>
1 | try : |
try :
<语句块 1>
except <异常类型>:
<语句块 2>
1 | try : |
异常处理的高级使用
try :
<语句块 1>
except :
<语句块 2>
else :
<语句块 3>
finally :
<语句块 4>
else 在不发生异常的时候执行,finally 对应语句块 4 一定执行
实例:身体质量指数 BMI
- 定义:BMI = 体重(kg)/身高(m2)
同时输出国际和国内 BMI 指标:
1 | # BMI |
程序的循环结构
- 遍历循环 保留字:for
- 无限循环 保留字:while
- 循环控制保留字 break,continue
- 循环的高级用法
遍历循环
for <循环变量> in <遍历结构> :
<语句块>
1 | for i in range(5): |
无限循环
反复执行语句块,直到条件不满足。
1 | a = 3 |
循环控制保留字
- break 跳出并结束当前整个循环,执行循环后的语句,一个 break 只跳出一层循环。
- continue 结束当前循环,继续执行后续次数循环
1 | for c in "python123": |
循环的拓展
循环与 else
- 当循环没有被 break 退出时,执行 else 语句块
1 | for c in "python123": |
random 库的使用
random 是使用随机数的 python 标准库
- 伪随机数:采用梅森旋转算法生成的(伪)随机序列中元素
- 使用 random : import random
random 包括两类函数,常用共八个
- 基本随机数函数:seed(),random()
- 扩展随机函数: randint(),getrandbits(),uniform(),randrange(),choice(),shuffle()
基本随机数函数
- seed(a=None) 初始化给的随机数种子,默认为当前系统时间 >>>random.seed(10)
- random() 生成一个[0.0,1.0]之间的随机小数 >>>random.random()
扩展随机数函数
randint(a,b) 生成一个[a,b]之间的整数 >>>random.randint(10,100) #64
randrange(m,n[,k]) 生成一个[m,n]之间以 k 为步长的随机整数 >>>random.randrange(10,100,10) #80
getrandbits(k) 生成一个 k 比特长的随机整数 >>>random.getrandbits(316) #37885
uniform(a,b) 生成[a,b]之间的随机小数 >>>random.uniform(10,100) #13.092084829212343
choice(seq) 从序列 seq 中随机选择 >>>random.choice([1,2,3,4,5,6]) #2
shuffle(seq) 将序列中元素随机排列,返回打乱后的序列
1 | s = [1,2,3,4,5,6] |