字典 python_python字典

字典 python_python字典字典是一种可变的容器,可以存储任意类型的数据字典中的每个数据都是用”键”(key)进行索引,而不像序列可以用下标进行索引字典中的数据没有先后关系,字典的存储是无序的字典是python中唯一的

1.定义

  1. 字典是一种可变的容器,可以存储任意类型的数据

  2. 字典中的每个数据都是用”键” (key) 进行索引,而不像序列可以用下标进行索引

  3. 字典中的数据没有先后关系,字典的存储是无序的

  4. 字典是python中唯一的映射类型,采用键值对(key-value)的形式存储数据。key必须是不可变类型,如:数字、字符串、元组。

  5. 字典的表示方式是以{} 括起来,以冒号(:)分割的键值对,各键值对之间用逗号分隔开

  6. 字典的键一般是唯一的,如果重复最后的一个键值对会替换前面的

2.字典的使用

2.2创建字典

2.2.1创建空字典:

d = { 
   } # 空字典 d = dict() # 空字典 

2.2.2创建非空的字典:

dic1 = { 
   'name': 'cgk', 'age': 20, 'sex': 'male'} dic2 = dict((('name', 'cgk'),)) 

在这里插入图片描述
键一般是唯一的,如果重复最后的一个键值对会替换前面的
值可以取任何数据类型,但键必须是不可变的,如字符串、数字或元组。

2.3增

#增 dic1 = { 
   'name': 'cgk'} dic1['age'] = '20' print(dic1) #键存在,不改动,返回字典中相对应的键对应的值 a = dic1.setdefault('age', 30) print(a) print(dic1) #键不存在,在字典中增加新的键值对,并返回相应的值 b = dic1.setdefault('hobby', 'girl') print(b) print(dic1) 

展示效果:
在这里插入图片描述

2.3查

#查 dic4 = { 
   'name': 'cgk', 'age': '20', 'hobby': 'girl'} print(dic4['name']) #通过键查找 print(dic4.values()) #打印全部值 print(dic4.keys()) #打印全部键 print(dic4.items()) #打印全部键值对 # 打印全部键,转成列表形式 print(list(dic4.keys())) 

展示效果:
在这里插入图片描述

2.4改

2.4.1修改字典对应键的值

dic4 = { 
   'name': 'cgk', 'age': '20', 'hobby': 'girl'} dic4['age'] = 30 #更新 dic4['school'] = '北大' #添加 print(dic4) 

展示效果:
在这里插入图片描述

2.4.2向字典添加新内容的方法是增加新的键/值对——updat

 dic4 = { 
   'name': 'cgk', 'age': '20', 'hobby': 'girl'} dic5 = { 
   1: "1", 'age': "30"} dic4.update(dic5) #把dic5加进dic4里面,如果有重复的键,则覆盖 print(dic4) 

展示效果:在这里插入图片描述

2.5删

#删 dic5 = { 
   'name': 'cgk', 'age': '20', 'hobby': 'girl', 'school': '北大'} del dic5['name'] #删除键是name的条目 print(dic5) red = dic5.pop('hobby') #通过pop删除键是hoppy的条目,并返回删除的值 print(red) print(dic5) dic5.clear() #清空字典 print(dic5) del dic5 #直接删除字典 

展示效果:
在这里插入图片描述

清空字典只是晴空字典的所有内容,但字典还存在
del 字典 则是将字典全部删除,包括形式及内容

3.其他操作以及涉及到的方法

3.1 dict.fromkeys

‘Mac’ 统一的字符串分别赋给前面三个!
在这里插入图片描述
[‘Mac’, ‘huawei’] 统一的列表分别赋给前面三个!
在这里插入图片描述

3.2 d.copy()

对字典 d 进行浅复制,返回一个和d有相同键值对的新字典

3.3 嵌套

#嵌套 av_catalog = { 
    "欧美": { 
    "www.111.com": ["免费的,高清的", "质量一般"], "www.222.com": ["免费的,清晰", "质量还行"], "333.com": ["自拍,图片", "资源不多,更新慢"], "444.com": ["质量很高,good", "收费,白嫖绕路"] }, "日韩": { 
    "555.com": ["质量很差,不喜欢", "收费"] }, "大陆": { 
    "666.com": ["免费,好人一生平安", "服务器在国外,慢"] } } av_catalog["大陆"]["666.com"][1] += ",可以用爬虫爬下来" #修改 print(av_catalog["大陆"]["666.com"]) #['全部免费,真好,好人一生平安', '服务器在国外,慢,可以用爬虫爬下来'] 

3.4 sorted(dict)

返回一个有序的包含字典所有key的列表

dic = { 
   5: '555', 2: '222', 4: '444'} print(sorted(dic)) #默认根据键排序 [2, 4, 5] print(sorted(dic.values())) #根据值排序 ['222', '444', '555'] print(sorted(dic.items())) #根据键排序 [(2, '222'), (4, '444'), (5, '555')] 

3.5 字典的遍历

dic = { 
   'zhangsan': { 
   'age': 11, 'sex': '男'}, '李四': { 
   'age': 22, 'sex': '男'}, 'wangwu': { 
   'age': 33, 'sex': '女'} } #方法一:  for i in dic: print(i) #默认遍历打印键 print(i, dic[i]) #打印键值对 #方法二: for i in dic.items(): print(i) #打印键值对 for i, v in dic.items(): print(i, v) #打印键值对 

4.字典的内置方法&函数

方法&函数 描述/dic代表字典对象
dic.clear() 清空字典
dic.pop(key) 移除键,同时返回此键所对应的值
dic…popitem() 随机删除一组键值对,同时返回对应的值
dic.copy() 返回字典dic的副本,只复制一层(浅拷贝)
dic.update(dic1) 将字典dic1合并到dic中,如果键相同,则此键的值取dic1的值作为新值
dic.get(key, default) 返回键key所对应的值,如果没有此键则返回default
dic.keys() 返回可迭代的dict_keys集合对象
dic.values() 返回可迭代的dict_values值对象
dic.items() 返回可迭代的dict_items对象
cmp(dict1, dict2) 比较两个字典元素
len(dict) 计算字典元素个数,即键的总数
str(dict) 输出字典可打印的字符串表示
type(variable) 返回输入的变量类型,如果变量是字典就返回字典类型

今天的文章
字典 python_python字典分享到此就结束了,感谢您的阅读。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:http://bianchenghao.cn/80412.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注