为什么我不能直接修改以下dict中的列表值?
price_to_names = {'$': [], '$$': []}
price_to_names['$'] = price_to_names['$'].append('hello')
以下代码将dict更改为
{'$': None, '$$': []}
我希望price_to_names成为
{'$': ['hello'], '$$': []}
答案 0 :(得分:1)
append
不会返回新列表。
price_to_names['$'].append('hello')
为None
,因为列表的append
方法返回None
。这就是您将None
指定为键'$'
的值的原因。不要使用作业,只需附加到您的列表中:
>>> price_to_names = {'$': [], '$$': []}
>>> price_to_names['$'].append('hello')
>>> price_to_names
{'$$': [], '$': ['hello']}