Python之字典生成式

                                            字典生成式示例java


1、例如生成字典{'java': 89, 'python': 90, 'perl': 91}python

b = ['java','python','perl']
s = [89,90,91]
d = {}

# for in 循環
for i,j in zip(b,s):
    d[i] = j
print(d) #{'java': 89, 'python': 90, 'perl': 91}

# 字典生成式
d = {i:n for i,n in zip(b,s)}
print(d) #{'java': 89, 'python': 90, 'perl': 91}


2、添加if判斷ide

d = {}
for i,n in zip(b,s):
    if n >= 90:
        d[i] = n
print(d) #{'python': 90, 'perl': 91}
d = {i:n for i,n in zip(b,s) if n >=90 }
print(d) #{'python': 90, 'perl': 91}


3、雙重循環spa

d = {}
#雙重for in 循環
for i in range(1,4):
    for n in range(1,4):
        d[i] = n
print(d) #{1: 3, 2: 3, 3: 3} 由於key惟一,後面的key:value都被1:3 2:3 3:3覆蓋掉了

# 字典生成式
d = {i:n for i in range(1,4) for n in range(1,4)}
print(d) # {1: 3, 2: 3, 3: 3}


4、雙重循環,嵌套ifip

d = {}
# 雙重for in循環,嵌套if
for i in range(1,4):
    for n in range(1,4):
        if n < 3:
           d.update([(i,n)])
print(d) #{1: 2, 2: 2, 3: 2}

# 字典生成式
d = {i:n for i in range(1,4) for n in range(1,4) if n <3}
print(d) #{1: 2, 2: 2, 3: 2}
相關文章
相關標籤/搜索