我是 python 新手,需要幫助來理解這段用于創建字典的代碼
new_key_lis = [18,23,45]
b= dict([(23,18)])
c = dict(zip(new_key_lis, [None]*len(new_key_lis)))
print(c)
我想知道 [None] 和 None 之間的區別?
uj5u.com熱心網友回復:
None是無用的特殊值,NoneType型別的唯一值。
[None]是一個只包含一個值的串列,該值是None。
所以不僅None和[None]和不同,而且它們有不同的型別。
更進一步,一個串列可以乘以一個整數來重復它的元素。例如[1, 2] * 3是[1, 2, 1, 2, 1, 2]
uj5u.com熱心網友回復:
在這里,你有new_key_lis = [18,23,45]。如果你想創建一個字典,其中的專案作為鍵和None值使用dict()建構式,那么由于new_key_lis長度為 3,你需要一個None相同長度的s串列傳遞給zip()。這就是您正在創建的內容[None]*len(new_key_lis)。
您可以使用獲得完全相同的結果
c= dict.fromkeys(new_key_lis)
無需使用,[None]因為dict.fromkeys方法創建了一個新字典,其中包含來自傳遞序列的鍵(在本例中new_key_lis)和設定為默認值的值(除非另有分配,None)。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/403717.html
標籤:
上一篇:我如何讓這兩段代碼一起運行?
下一篇:理解關于數字倍數的代碼
