? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 字典生成式示例
一、例如生成字典{'java': 89, 'python': 90, 'perl': 91}
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}
二、添加if判斷
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}
三、雙重循環
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}
四、雙重循環,嵌套if
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}
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。