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

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

我们在学 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(非私信)

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

相关文章
|
4月前
|
大数据 测试技术 索引
Python中列表和字符串常用的数据去重方法你还记得几个?
Python中列表和字符串常用的数据去重方法你还记得几个?
53 3
|
1月前
|
存储 Python
|
4月前
|
索引 Python
Python列表去重且不改变元素顺序的代码
Python列表去重,如果不考虑原来元素的顺序(基本顺序)的话,可以使用Python内置的set()函数对列表进行转换去重,然后转换会列表,这是因为set()集合本身就具备去重的功能,但Python的集合又是无序的,因此可能会导致列表中元素原本排列顺序的改变。那要在不改变列表元素顺序的前提下
171 41
|
6月前
|
索引 Python
python之列表元素的访问,修改,组合以及判断和截取。
python之列表元素的访问,修改,组合以及判断和截取。
|
7月前
|
存储 Python
Python字典和集合操作指南:创建、获取值、修改和删除键值对,复制和遍历方法全解析
Python字典和集合操作指南:创建、获取值、修改和删除键值对,复制和遍历方法全解析
344 0
|
8月前
|
存储 算法 Serverless
【100天精通python】Day7:数据结构_列表 List的创建、删除、访问、遍历、统计、排序、推导等使用
【100天精通python】Day7:数据结构_列表 List的创建、删除、访问、遍历、统计、排序、推导等使用
103 0
|
10月前
|
存储 索引 Python
12.从入门到精通:Python字典,创建字典,访问字典的值,修改字典,删除字典,字典键的特性,字典内置函数和方法
12.从入门到精通:Python字典,创建字典,访问字典的值,修改字典,删除字典,字典键的特性,字典内置函数和方法
|
10月前
|
Python
Python应用专题 | 18:过滤掉list中被其他元素所包含的元素
介绍如何过滤掉list中被其他元素所包含的元素
|
10月前
|
Python
Python应用专题 | 17:根据子字符列表过滤掉给定列表
根据子字符列表过滤掉给定列表,从而实现数据的筛查或者去除
|
Python
python如何读取xlsx文件,并指定读取某一列,逐个逐个取出指定列中的值
要读取xlsx文件并指定读取某一列,可以使用Python中的pandas库。以下是一个读取xlsx文件并逐个逐个取出指定列中的值的示例代码:
928 0