前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >#PY小贴士# 字典可以通过序号索引来访问?

#PY小贴士# 字典可以通过序号索引来访问?

作者头像
Crossin先生
发布2020-01-17 10:37:20
5.7K0
发布2020-01-17 10:37:20
举报

我们在学 python 中的 list 和 dict 时知道:

  • list 是有序的,所以可以通过 list_a[0] 这样的方式通过索引(index)来访问列表中某个位置上的元素;
  • dict 是无序的,所以无法通过 dict_b[0] 这样的方式来访问字典中的元素,需要通过 dict_b[key] 通过键(key)来访问。

但是,

dict_b[0] 这种写法并非完全不可能!

在有些语言里,字典的键必须是字符串。但 python 不是。python 中的不可变类型(实现了__hash__方法的)都可以作为 key。因此,如下这个字典是合法的:

dict_b = {
    'a': 1,
    0: 2,
    1.5: 3,
    (2, 3): 4
}

于是,访问 dict_b[0] 就会得到对应的值(value):2。

不仅如此,你甚至还可以正常调用 dict_b[1.5]、dict_b[2, 3]。

不过在实际开发中,除非有特殊需求,或者和你的合作开发者有仇,否则不太建议用这种方式来设定字典的键。


#PY小贴士# 里,我们会分享 python 知识点、开发小技巧、学习中的常见问题等。篇幅短小,适合碎片时间阅读,欢迎关注!

本栏目接受投稿,采纳后将署名发表,可附个人博客、公众号、Github等。

如果你在编程学习中有疑问,可通过以下方式向我们提问:

1. 加入码上行动答疑群(最及时响应)

2. 加入知识星球 https://t.zsxq.com/IiAiiQj

3. 发微博加上 #编程教室# @Crossin(非私信)

提问时请表述清楚,附上必要代码、输出等截屏。


本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-01-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Crossin的编程教室 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档