擅长:python、mysql、java
<p>你不能在字典里放重复的键。但不是错误信息,
Python将在重复键的旧值之上写入新值。
考虑结果
此片段(如问题中所述,但在这里,我手动分割了每个键):</p>
<pre><code>current_dictionary = {"XXXX1234":43, "XXXX4547":58, "YYYY4948":93, "YYYY5050":45}
print(current_dictionary)
# {'XXXX1234': 43, 'XXXX4547': 58, 'YYYY4948': 93, 'YYYY5050': 45}
new_dictionary = {"XXXX":43, "XXXX":58, "YYYY":93, "YYYY":45}
print(new_dictionary)
# {'XXXX': 58, 'YYYY': 45}
</code></pre>
<p>注意<code>new_dictionary</code>的打印显示了
原版词典。此外,如果您使用的是IDE(我使用Spyder),则
checker/linter将在<code>new_dictionary</code>所在的行上发出警告
创造</p>
<p>现在,您如何在检测复制的同时编写此代码?
请在最后一节中尝试以下内容:</p>
<pre><code>new_dictionary = {}
for key,value in current_dictionary.items():
if key[0:4] not in new_dictionary:
new_dictionary[key[0:4]] = value
else:
print(f"Duplicate key {key[0:4]} with value {value}")
print(new_dictionary)
# Duplicate key XXXX with value 58
# Duplicate key YYYY with value 45
# {'XXXX': 43, 'YYYY': 93}
</code></pre>