kun*_*bey 2 python dictionary list python-3.x
我正在尝试创建一个嵌套字典,该字典具有子字典键作为列表的其余元素。以更简单的方式进行解释:
要求的输出:
payable = { 'A':{'B':0,'C':0},'B':{'A':0,'C':0}....}
输出:
payable = { 'A':{'B':0,'C':0,'A':0},'B':{'A':0,'C':0,'B':0}....}
我不需要 主'A' 键下的子 'A' 键。我怎样才能解决这个问题?
names = ['A', 'B', 'C']
payable = dict.fromkeys(names, {})
for mainKey in payable.keys():
for subKey in names:
if(mainKey != subKey):
payable[mainKey][subKey] = 0
print(payable)
Run Code Online (Sandbox Code Playgroud)
当您创建using时dict.fromkeys,所有键都处于相同的状态dict。
尝试payable使用dict理解来创建(换句话说,dict每个键都是新的),它可以正常工作:
names = ['A','B','C']
payable= {k:{} for k in names}
for mainKey in payable.keys():
for subKey in names:
if(mainKey!=subKey):
payable[mainKey][subKey]=0
print(payable)
Run Code Online (Sandbox Code Playgroud)
输出:
{'A': {'B': 0, 'C': 0}, 'B': {'A': 0, 'C': 0}, 'C': {'A': 0, 'B': 0}}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
65 次 |
| 最近记录: |