7.4 三元表达式和列表推导式
7.4.1 三元表达式(又称三目表达式)
name ='coco'
if name =='coco':
print('yes')
else:
print('no')
#写成三元表达式
#三元表达式将if-else写成一行
print('yes') if name=='coco' else print('no')
yes
yes
7.4.2 列表推导式
lis=[]
for i in range(1,10):
lis.append(i)
print(lis)
#写成列表推导式
lis=[i for i in range(1,10)]
print(lis)
lis=[i*2 for i in range(1,10)]
print(lis)
[1, 2, 3, 4, 5, 6, 7, 8, 9]
[1, 2, 3, 4, 5, 6, 7, 8, 9]
[2, 4, 6, 8, 10, 12, 14, 16, 18]
lis=[i*2 if i>5 else i for i in range(10)]
print(lis)
#只做了解,不要写这样的代码!!
[0, 1, 2, 3, 4, 5, 12, 14, 16, 18]
- 程序写的越容易看懂越好,而不是写成一行。
- 不建议使用三元表达式和列表推导式。