我认为可以按如下方式更新现有字典:
nameValuePair = 'myKey=myValue'
d.update(nameValuePair.split('='))
Run Code Online (Sandbox Code Playgroud)
但是我收到此错误:
Traceback (most recent call last):
File "<pyshell#98>", line 1, in <module>
d2.update(item.split('='))
ValueError: dictionary update sequence element #0 has length 1; 2 is required
Run Code Online (Sandbox Code Playgroud)
我查看了关于这个主题的其他一些StackOverflow问题/答案,这让我觉得这是可能的.我必须遗漏一些基本的东西......
错误消息已经为您提供了一个提示:您传递的序列中的每个项目的长度必须为2,这意味着它必须包含键和值.
因此,您必须传递2元组的元组(列表,序列,...)(-lists,-sequences,...):
// the value passed will be ((myKey, myValue), )
d.update((nameValuePair.split('='), ))
// ^ ^ ^
// creates a tuple of 1 element
Run Code Online (Sandbox Code Playgroud)
或者你可以这样做:
key, value = nameValuePair.split('=')
d[key] = value
Run Code Online (Sandbox Code Playgroud)