010 字典dict

Posted vajraboy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了010 字典dict相关的知识,希望对你有一定的参考价值。

1. 作用

如果我们需要用一个变量记录多个值,但多个值是不同属性的,比如人的姓名、年龄、身高,用列表可以存,但列表是用索引对应值的,而索引不能明确地表示值的含义,这就用到字典类型,字典类型是用key:value形式来存储数据,其中key可以对value有描述性的功能

字典的初识:
列表:
列表可以存储大量的数据,数据之间的关联性不强;
列表查询速度比较慢
容器型数据类型: dict
?
数据类型的分类(可变与不可变):
可变(不可哈希)的数据类型:list dict set
不可变(可哈希)的数据类型:str float complex bool int tuple
字典:{} 括起来,以键值对形式存储的容器型数据类型
dic = { ‘太白‘:
{‘name‘:‘王金刚‘,‘age‘:18},
‘python‘:[‘中国‘,‘美国‘,‘日本‘]
}
?
1.键必须是不可变的数据类型:int bool float complex str tule;
2.值可以是任意数据类型,对象;
3.字典 3.5 之前(含3.5) 是无序的;
4.字典3.6会按照初次建立字典的顺序;
5.字典3.7 以后都是有序的;
6.字典的优点:查询速度非常快,存储关联性的数据;
7.字典的缺点:以空间换时间;

2. 定义

message={‘name‘:‘tony‘,‘age‘:18,‘height‘:185.3}

3. 使用

# 1、字典类型是用key来对应值,key可以对值有描述性的功能,通常为字符串类型
>>> message={‘name‘:‘tony‘,‘age‘:18,‘height‘:185.3}
>>> message[‘name‘]
‘tony‘
>>> person_info[‘age‘]
18
>>> person_info[‘height‘]
185.3
# 2、字典可以嵌套,嵌套取值如下
>>> students=[
... {‘name‘:‘tony‘,‘age‘:38,‘hobbies‘:[‘play‘,‘sleep‘]},
... {‘name‘:‘jack‘,‘age‘:18,‘hobbies‘:[‘read‘,‘sleep‘]},
... {‘name‘:‘rose‘,‘age‘:58,‘hobbies‘:[‘music‘,‘read‘,‘sleep‘]},
... ]
>>> students[1][‘hobbies‘][1] #取第二个学生的第二个爱好
‘sleep‘



以上是关于010 字典dict的主要内容,如果未能解决你的问题,请参考以下文章

Python代码阅读(第19篇):合并多个字典

在python中,如何使用unicode内容订购dict?

010_go语言中的maps映射(字典)

python-010-字典

python-列表list- 元组(tuple)- 集合(set)-字典(dict)-实例代码

Python字典(dict)的操作方法汇总(约18种操作方法),并附示例代码