# 列表推导式
# 常规写法
x = 3
if x % 2 == 0:
print("偶数!")
else:
print("奇数!")
# 列表推导式
y = 8
print("奇数!") if x % 2 == 0 else print("偶数!")
'''
语法一:
exp1:在for循环中,如果x的值满足条件表达式condition(条件表达式),返回exp1,条件表达式不成立,则不返回
x:for循环中的变量
date:一个序列(比如列表list[]/元组()tuple/字符串str"")
condition:条件表达式
[exp1 for x in data if condition]
语法二:
exp1:在for循环中,如果x的值满足条件表达式condition(即条件表达式成立),返回exp1;条件表达式不成立则返回exp2
condition:条件表达式
exp2:在for循环中,如果x的值满足条件表达式condition(即条件表达式成立),返回exp1;条件表达式不成立则返回exp2
x:for循环中变量
data:个序列(比如:列表/元组/字符串等)
[exp1 if condition else exp2 for x in data]
'''
# 需求一:获取0~20的所有偶数并且乘以10,并返回所有计算之后的结果。语法一
list1 = [x * 10 for x in range(0,21) if x % 2 == 0]
print(list1)
print(type(list1))
# 需求二:将0~20的偶数乘以10,奇数乘以100,并返回所有计算之后的结果。语法二
list2 = [x * 10 if x % 2 == 0 else x * 100 for x in range(0,21)]
print(list2)
print(type(list2))
'''
在书写列表推导式的时候,所有表达式都写在{}内部,因为返回值是列表
'''