python字典更新方法

2024-03-28 17:34:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个列表字符串标记。

我正在尝试初始化一个字典,其中键作为标记字符串,值作为数组索引。

for i, ithTag in enumerate(tag):
    tagDict.update(ithTag=i)

上面返回me{'ithTag':608}608是第608个索引

我的问题是,当i被解释为变量时,Python将“ithTag”视为字符串而不是变量。

我很困惑,在谷歌上搜索这些问题有点困难。我希望我把这个问题的标题写对了

谢谢!


Tags: 字符串in标记标题列表for字典tag
3条回答

如果你想变得聪明:

tagDict.update(map(reversed, enumerate(tag)))

感谢布莱恩的更新。这显然比迭代版本快5%。

(编辑:感谢saverio指出我的回答是错误的(现在已修复)。也许最有效的/Python式的方法是Torsten Marek的回答,稍加修改:

tagDict.update((t, i) for (i,t) in enumerate(tag))

(第页)

一行字:

tagDict = dict((t, i) for i, t in enumerate(tag))

你真的想这么做:

for i, tag in enumerate(tag):
    tagDict[tag] = i

update()方法用于使用其他字典更新字典,而不是更改单个键/值对。

相关问题 更多 >