Skip to content

推导式

推导式语法:

[ 表达式 for 迭代变量 in 可迭代对象 if 条件 ]

列表推导式

python
list_a = [i for i in range(10)]
print(list_a)
list_b = [i for i in range(10) if i % 2 == 0]
print(list_b)

字典推导式

python
dict_a = {i: i ** 2 for i in list_e}
print(dict_a)

集合推导式

python
set_a = {i for i in range(10) if i % 2 == 0}
print(set_a)

生成器推导式

python
generator_a = (i for i in range(10) if i % 2 == 0)
for i in generator_a:
    print(i)
    if i == 4:
        break
    print(i)

循环嵌套

python
mylist = [str(i)+j for i in range(1, 6) for j in 'ABCDE']

字典转换为列表

python
mydict = {'key1' : 'value1', 'key2' : 'value2'}
mylist = [key + ':' + value for key, value in mydict.items()]
print(mylist)

字典 key 和 value 互换

python
{value: key for key, value in mydict.items()}