擅长:python、mysql、java
<p>在python中,列表是可变的,并且您使用<strong>排序器</strong>对settings dict中的键使用list。每次在list中进行更改(添加或删除元素),它都会反映出您使用同一列表时的每个键。详细了解请参考:<a href="https://stackoverflow.com/questions/11142397/does-python-have-an-immutable-list">Does Python have an immutable list?</a></p>
<p>您可以将程序更改为:</p>
<pre><code> def user_settings():
settings = {}
while True:
categorie = input('Enter category: \n')
if categorie == 'q':
break
while True:
sorteren = input('enter range: \n')
if sorteren == 'q':
break
if categorie in settings: #for python2.X use if settings.has_key(categorie)
settings[categorie].append(sorteren)
else:
settings[categorie]=[sorteren]
print(settings)
user_settings()
</code></pre>
<p>输出:
<code>{'a': ['b', 'c'], 'd': ['e', 'f']}</code></p>