赞
踩
注:方括号为可选,if else 结构可嵌套
if 条件表达式 1 :
语句 1/语句块 1
elif 条件表达式 2:
语句 2/语句块 2
...
elif 条件表达式 n:
语句 n/语句块 n
[else:
语句 n+1/语句块 n+1
]
更加简洁双分支:
条件为真时的值 if (条件表达式) else 条件为假时的值
while 条件表达式:
循环体
else:
语句块
else语句可选:如果 for、while 语句没有被 break 语句结束,则会执行 else 语句,否则不执行。
for 变量 in 可迭代对象:
循环体
else:
语句块
range 对象是一个迭代器对象
range(start, end [,step])
生成的数值序列从 start 开始到 end 结束(不包含 end)。若没有填写 start,则默认从 0 开始。step 是可选的步长,默认为 1
break 语句可跳出while 和 for 一层循环循环,用来结束整个循环。
continue 语句用于结束本次循环(也是最内层循环),继续下一次。
zip()函数在最短序列“用完”时就会停止。
names = ("高淇","高老二","高老三","高老四")
ages = (18,16,20,25)
jobs = ("老师","程序员","公务员")
for name,age,job in zip(names,ages,jobs):
print("{0}--{1}--{2}".format(name,age,job))
[表达式 for item in 可迭代对象 ]
[表达式 for item in 可迭代对象 if 条件判断]
例如:
print([x for x in range(1,5)])
print([a for a in "abcdefg"])
print([x*2 for x in range(1,20) if x%5==0 ])
[10, 20, 30]
#用两层for循环
print([(row,col) for row in range(1,10) for col in range(1,10)])
类似于列表推导式,字典推导也可以增加 if 条件判断、多个 for 循环
{key_expression : value_expression for 表达式 in 可迭代对象}
{表达式 for item in 可迭代对象 }
{表达式 for item in 可迭代对象 if 条件判断}
用法同上
(x for x in range(1,100) if x%9==0)
<generator object <genexpr> at 0x000001AF0F6F3610>
gen = (x for x in range(1,100) if x%9==0)
for x in gen:
print(x,end=' ')
for x in gen:
print(x,end=' ')
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。