首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用于将键映射为自动增量整数值的Python数据结构

用于将键映射为自动增量整数值的Python数据结构
EN

Stack Overflow用户
提问于 2022-07-22 20:18:31
回答 2查看 42关注 0票数 0

我想将一个字符串列表存储到一个双元数据结构中,其中键将是我提供的字符串,值将是一个自动增量计数。

代码语言:javascript
复制
text = ['hello', 'world', 'again']
ai_ds = {} # define the data structure here, used dict just for reference
ai_ds.add(text[0]) # should return 0
ai_ds.add(text[1]) # should return 1

auto_increment_ds.get(text[0]) # should return 0

我可以保留一个手动计数器,然后在字典中插入值时使用它,但我想知道python中是否存在这样的默认数据结构。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-07-22 20:21:38

带有setdefault的dict会运行得很好:

代码语言:javascript
复制
d = {}
d.setdefault("a", len(d))
d.setdefault("b", len(d))
d.setdefault("a", len(d))
print(d) # a=0, b=1
票数 5
EN

Stack Overflow用户

发布于 2022-07-23 19:55:14

如果字符串值是唯一项,则:

代码语言:javascript
复制
text = ['hello', 'world', 'again']
d = {}    
d[text[0]] = len(d)    
d[text[1]] = len(d)    
d[text[2]] = len(d)
print(d)

{'hello': 0, 'world': 1, 'again': 2}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73085690

复制
相关文章

相似问题

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