花点时间把python入门<十八>——列表生成式的if/else问题

1.列表生成式的if/else问题

print([x for x in range(1,8) if x%2==0])
#int(x for x in range(1,8) if x%2==0 else 0)错误示范
#print([x if x%2==0 for x in range(1,8)])错误示范
print([x if x %2==0 else None for x in range(1,8)])

也就是说,当if放在for后面时,不能加else
但当if放在for前面时必须加else

上一篇:阶乘求和_


下一篇:【Python入门教程】第17篇 for循环语句