首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用enumerate返回字典

使用enumerate返回字典
EN

Stack Overflow用户
提问于 2018-07-10 00:44:46
回答 3查看 209关注 0票数 1

下面是我应该使用的列表:

代码语言:javascript
复制
d_list(['a','b','c'])

返回代码应该会给出如下输出:

代码语言:javascript
复制
{‘a’:0, ‘b’:1, ‘c’:2}
EN

回答 3

Stack Overflow用户

发布于 2018-07-10 00:45:59

代码语言:javascript
复制
def d_list(L):
return {key:value for value, key in enumerate(L)}

这应该会给出输出:{‘a’:0,‘b’:1,‘c’:2}

票数 1
EN

Stack Overflow用户

发布于 2018-07-10 00:59:57

代码语言:javascript
复制
def d_list(l):
    return dict(map(reversed, enumerate(l)))

d_list(['a','b','c'])
# {'a': 0, 'b': 1, 'c': 2}
票数 1
EN

Stack Overflow用户

发布于 2018-07-10 01:07:22

如果您的dict(..)版本不支持字典理解,那么还有一个不那么晦涩难懂的版本使用Python @Willem:

代码语言:javascript
复制
def d_list(L):
    return dict( (v,i) for i,v in enumerate(L) )

如果您不想使用生成器,则可以使用列表理解

代码语言:javascript
复制
def d_list(L):
    return dict( [ (v,i) for i,v in enumerate(L) ] )
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51250375

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档