分支结构
-
单分支结构
if <条件>: # True <语句块>
-
二分支结构
if <条件>: # True <语句块1> else : # False <语句块2> # 紧凑形式:适用于简单表达式的二分支结构 <表达式1> if <条件> else <表达式2> # 列如: guess = eval(input()) print("猜{}了".format("对" if guess == 99 else "错"))
-
多分支结构
if <条件>: # True <语句块1> elif : # False <语句块2> ...... else : # False <语句块...>
-
条件组合
操作符及使用 描述 x and y 两个条件x 和 y 的逻辑与 x or y 两个条件x 和 y 的逻辑或 not x 条件x 的逻辑非 -
异常处理
try : <语句块1> except <异常类型标记>: # 异常 <语句块2> # 异常类型标记如: NameError 名字未定义 # 异常处理的高级使用 try : <语句块1> except : <语句块2> else : # 在不发生异常时执行 <语句块3> finally : # 一定执行 <语句块4>
循环结构
-
遍历循环
for <循环变量> in <遍历结构> : <语句块 # 遍历结构: `range(N)` 从`0~(N-1)` # `range(M, N, K)` 从`M`开始, `N-1`结束, `K`步长 for line in fi: # 循环文件的每一行 # fi 文件标识符
-
无限循环
while <条件> : <语句块> # 反复执行语句块,直到条件不满足时结束
-
循环控制保留字
-
break
跳出并结束当前整个循环,执行循环后的语句, -
continue
结束当次循环,继续执行后续次数循环
-
-
循环的扩展用法
-
循环与
else
for <循环变量> in <遍历结构> : <语句块1> else : <语句块2> while <条件> : <语句块> else : <语句块2> # 当循环没有被break语句退出时,执行else语句块 # esle 语句作为正常完成循环的奖励
-
random库
主要生成随机数
基本随机数函数: seed()
, random()
扩展随机数函数: randint()
, getrandbits()
, uniform()
, randrange()
, choice()
, shuffle()
函数 | 描述 |
---|---|
seed(a=None) | 初始化给定的随机数种子,默认为当前系统时间: random.seed(10) # 产生种子10 对应的序列 |
random() | 生成一个[0.0, 1.0)之间的随机小数:random.seed(10); random() 必定产生0.5714025946899135 |
randint(a,b) | 生成一个[a, b]之间的整数 |
randrange(m, n[, k] | 生成一个[m, n)之间以k为步长的随机整数 |
getrandbits(k) | 生成一个k比特长的随机整数 |
uniform(a,b) | 生成一个[a,b]之间的随机小数 |
choice(seq) | 从序列seq中随机选择一个元素: random.choice([1, 2, 3, 4, 5]); 3 |
shuffle(seq) | 将seq中元素随机排列,返回打乱后的序列: s = [1, 2, 3, 4, 5, 6, 7, ,8, 9]; random.shuffle(s); print(s); [3, 5, 8, 9, 6, 1, 2, 7, 4]; |