1.列表推导式:
列表推导式(list comprehension)是利用其它列表创建新列表的一种方式,工作原理类似for循环,即可对得到的元素进行转换变形 。
基本格式:[返回值 for 循环条件 if 条件]
eg:
'''
1.列表推导式:列表推导式(list comprehension)是利用其它列表创建新列表的一种方式,工作原理类似for循环,即可对得到的元素进行转换变形 ,
其基本格式如下(可以有多个for语句):
[返回值 for 循环条件 if 条件]
'''
list0=['MgVccl',18,'重庆']
list1=[1 for i in list0 if i == 18]
# list1=[]
# for i in list0:
# if i == 18:
# list1.append(1)
print(list1)
2.集合推导式:
集合推导式跟列表推导式非常相似,唯一区别在于用{}代替[]。
基本格式: {返回值 for 循环条件 if 条件}
eg:
''
集合推导式跟列表推导式非常相似,唯一区别在于用{}代替[]。
基本格式: {返回值 for 循环条件 if 条件}
'''
a0={'MgVccl', 18, '重庆'}
a1={1 for i in list0 if i == 18}
# a1={}
# for i in a0:
# if i == 18:
# a1.append(1)
print(a1)
3.字典推导式:
eg:
'''
字典推导式
'''
list0=['MgVccl','重庆','上海']
D = {key: val for val,key in enumerate(list0)}
print(D)
4.嵌套列表推导式:
也就是循环嵌套,用推导式的方法写出来。
eg:
'''
嵌套列表推导式
'''
#从1到9中选三个数字组成三位数
# for x in range(1,10):
# for y in range(1,10):
# for z in range(1,10):
# if x != y and x != z and y != z:
# print(x*100+y*10+z)
# num=[x*100+y*10+z for x in range(1,10) for y in range(1,10) for z in range(1,10) if x != y and x != z and y != z]
# print(num)