python 的dict的update 方法的一点诡秘的行为

如下:

>>> 'a%s'%a
'a{1: 0, 2: 0}'
>>> for k,v in a.items():
	a.update(k=v)

	
>>> a
{1: 0, 2: 0, 'k': 0}

期望输出的是

{1:0,2:0}

以下这么写是对的:

>>> a={1:0,2:0}
>>> for k,v in a.items():
	a.update({k:v})

	
>>> a
{1: 0, 2: 0}

原因未知,先记录着。

原文地址:https://www.cnblogs.com/Tommy-Yu/p/4179007.html