#python–条件语句,循环语句 --一些加入了自己的理解
##具体学习内容
###4.条件语句
4.1assert 关键词:作用是当后面的条件为False时,程序自动奔溃,并抛出AssertionError的异常。不会再往下执行,节省时间资源;
当assert 报错后,后面的print语句不执行;
4.2for 与 enumerate结合
for i, language in enumerate(languages, 2):
print(i, 'I love', language)
print('Done!')
10.推导式
列表推导式
[expr for value in collections [ if condition]]
x=[-4,-2,0,2,4]
y=[value*2 for value in x]
print(y)
#[-8, -4, 0, 4, 8]
x=[(i,i**2) for i in range(6)]
print(x)
#[(0, 0), (1, 1), (2, 4), (3, 9), (4, 16), (5, 25)]
#求0-99之间 不可以被 2 但可以被 3 整除的数的列表集合
x=[i for i in range(100) if (i%2)!=0 and (i%3)==0]
print(x)
#[3, 9, 15, 21, 27, 33, 39, 45, 51, 57, 63, 69, 75, 81, 87, 93, 99]
#两次循环嵌套:外层循环的每一个数(0-2) 与内层循环(0-2)的每一个数 进行组合 为元祖,在组为 list
x=[(i,j) for i in range(0,3) for j in range(0,3)]
print(x)
[(0, 0), (0, 1), (0, 2), (1, 0), (1, 1), (1, 2), (2, 0), (2, 1), (2, 2)]
#外循环小于1的 与 内循环 大于 1 的 数字进行组合
a=[(i,j) for i in range(0,3) if i<1 for j in range(0,3) if j >1]
print(a)
#[(0, 2)]
元组推导式
( expr for value in collection [if condition] )
#元祖的打印需要转化
print(tuple(a))
字典推导式
#key:value 可以同时设置,也可以双层循环
{ key_expr: value_expr for value in collection [if condition] }
集合推导式
{ expr for value in collection [if condition] }
其他
#每次弹出一个迭代器的一位
next()
#sum()函数可以对list 和 tuple 类型的元素直接求和;
##学习问题
##解决方法记录
##学习总结
*