我刚开始学习Python(以及编程)。
我想通过在for循环中交替更改字典的键来修改字典。然而,我写的以下代码没有成功:
#coding: utf-8
dict1 = {'key1': 'value1', 'key2': 'value2', 'key3': 'value3'}
dict2 = dict.fromkeys(dict1.values(),[])
for key in dict2:
if key == 'value1':
dict2[key].extend(['test1', 'test2'])
elif key == 'value2':
dict2[key].extend(['test3', 'test4'])
elif key == 'value3':
dict2[key].extend(['test5', 'test6'])
print (dict2['value1'])
print (dict2['value3'])
我期望的结果是:
['test5', 'test6']
['test1', 'test2']
但我实际上得到了:
['test5', 'test6', 'test3', 'test4', 'test1', 'test2']
['test5', 'test6', 'test3', 'test4', 'test1', 'test2']
我猜问题可能来自于我使用"dict.fromkeys"从另一个字典创建字典,但即使是这种情况,我也看不出有什么问题。
感谢您的关注。期待您的建议。