Python if else 在一行
作用类似于Java的三元运算符
IF 后为真:
a = True
c = 4 if a else 3
print(c) # out: 4
IF 后为假:
a = False
c = 4 if a else 3
print(c) # out: 3
列表推导式中使用if和if-else:
1.语法结构:
-
[x for x in data if condition]
此处if主要起条件判断作用,data数据中只有满足if条件的才会被留下,最终生成一个数据列表。 -
[exp1 if condition else exp2 for x in data]
此处if…else主要起赋值作用。当data中的数据满足if条件时,将其做exp1处理,否则按照exp2处理,最终生成一个数据列表。
2.实例演示
(1)使用列表推导式生成1-10的所有偶数
data = [i for i in range(1, 11)if i %2 == 0)]
[2, 4, 6, 8, 10]
(2)使用列表推导式,生成1-10以内,如果是奇数,输出“奇”,如果是偶数,则输出"偶"
data = ['奇' if i%2==1 else '偶' for i in range(1, 11)]
# ['奇', '偶', '奇', '偶', '奇', '偶', '奇', '偶', '奇', '偶']
本文来自博客园,作者:chuangzhou,转载请注明原文链接:https://www.cnblogs.com/czzz/p/15838845.html