Python:创建字典,列表索引号为键,列表元素为值?

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)