三元表達式
條件成立的返回值 if 條件 else 條件不成立的返回值
使用三元表達式可以將代碼簡化
def func(x,y):
if x > y:
return x
else:
return y
使用三元表達式: x if x > y else y
生成式
1.列表生成式
[i for i in iterable 條件]
eg:
生成一個包含1-10的列表:lst = [i for i in range(1,11)]
生成一個包含1-10中奇數的列表: lst = [i for i in range(1,11) if i % 2 != 0]
2.字典生成式
{k:v for k,v in iterable 條件}
eg:
lst = [("name","xx"),("age",18),("gender","male"),("hobby","play")] 將lst轉化爲字典,但是不要hobby
dic = {k:v for k,v in lst if k != "hobby"}
3.集合生成式
{i for i in iterable 條件}
eg:
生成1-10的集合:tup = {i for i in range(1,11)}
4.元組生成式
嚴格來說不算元組生成式,因爲得到的記過是一個迭代器,但是我們可以next()進行取值
tup = (i for i in range(10))
print(tup,type(tup))
ret1 = next(tup)
ret2 = next(tup)
結果如如下: