q-c*_*ute 2 python dictionary list python-3.x
我见过的所有问题都与我想做的完全相反:
说我有一个清单:
lst = ['a','b','c']
Run Code Online (Sandbox Code Playgroud)
我正在寻找一个字典,其中键是元素编号(从1开始而不是0),列表元素是值.像这样:
{1:'a', 2:'b', 3:'c'}
Run Code Online (Sandbox Code Playgroud)
但是长长的名单.我已经阅读了一些关于enumerate()的内容,但我见过的所有内容都使用了list元素作为键.
我找到了这个:
dict = {tuple(key): idx for idx, key in enumerate(lst)}
Run Code Online (Sandbox Code Playgroud)
但这会产生:
{'a':1, 'b':2, 'c':3}
Run Code Online (Sandbox Code Playgroud)
......这与我想要的相反.而且,对于一个对Python新手来说很困惑的奇怪表示法也是如此.
建议非常感谢!谢谢!
Pat*_*ugh 10
enumerate有一个start关键字参数,所以你可以从你想要的任何数字计数.然后把它传递给dict
dict(enumerate(lst, start=1))
Run Code Online (Sandbox Code Playgroud)
你也可以写字典理解
{index: x for index, x in enumerate(lst, start=1)}
Run Code Online (Sandbox Code Playgroud)