Python—字典的操作
字典的操作:
#字典的本质其实是dict类的对象
>>> a = dict([("a","")])
>>> a
{'a': ''}
一.增加
>>> student_num = {"stu1101": "阿橙", "stu1102": "阿万", "stu1103": "阿朝", "stu1104": "peter1",}
>>> student_num["stu1105"] = "zebra" #增加
>>> print(student_num)
{'stu1101': '阿橙', 'stu1102': '阿万', 'stu1103': '阿朝', 'stu1104': 'peter1', 'stu1105': 'zebra'}
>>>
二.修改
>>> student_num = {"stu1101": "阿橙", "stu1102": "阿万", "stu1103": "阿朝", "stu1104": "peter1",}
2 >>> student_num["stu1101"] = "gkx" #修改
>>> student_num
{'stu1101': 'gkx', 'stu1102': '阿万', 'stu1103': '阿朝', 'stu1104': 'peter1', 'stu1105': 'zebra'}
三.删除
>>> #删除
2 >>> student_num.pop("stu1104") #标准删除方法
'peter1'
>>> student_num
{'stu1101': 'gkx', 'stu1102': '阿万', 'stu1103': '阿朝', 'stu1105': 'zebra'}
>>>
>>>
8 >>> del student_num["stu1105"]
>>> student_num
{'stu1101': 'gkx', 'stu1102': '阿万', 'stu1103': '阿朝'}
>>> #ptyhon内置的删除方法
>>>
13 >>> student_num.popitem() #随机删除
('stu1103', '阿朝')
>>> student_num
{'stu1101': 'gkx', 'stu1102': '阿万'}
>>>
四.查找
>>> #查找
>>> zoo = {"a101":"zebra","b202":"chimpanzee","c303":"lion"}
3 >>> "a101" in zoo #判断字典中key是否在dict中
True
>>>
6 >>> zoo["a101"]
'zebra'
>>> #用key来查找value,不过当key不在该dict中时,会报错
>>>
10 >>> zoo.get("d404")
>>> print(zoo.get("d404"))
None
>>> print(zoo.get("c303"))
lion
>>> #用.get的方法,找不到不会报错,建议使用
五.字典的循环和自动生成
>>> zoo.values() #打印所有value
dict_values(['zebra', 'chimpanzee', 'lion'])
>>> zoo.keys() #打印所有key
dict_keys(['a101', 'b202', 'c303'])
>>> zoo2
{'c303': 'lion', 'd404': 'elephant', 'c4': 'tiger'}
3 >>> for key in zoo2: #打印key和value
print(key,zoo2[key]) >>>
c303 lion
d404 elephant
c4 tiger
>>> 12 >>> for k,v in zoo2.items(): #数据量大时不要用
print(k,v) >>>
c303 lion
d404 elephant
c4 tiger
>>> 21 >>> c = dict.fromkeys([1,2,3],[4,5,6]) #位置1是key,位置2不管写啥都是values,不过若位置2为[4:{"name":"6"}],生成的字典,若修改其中一个[4:{"name":"6"}]字典里的值,其他value也都会一起改,
类似浅copy
print(c)
{1: [4,5,6], 2: [4,5,6], 3: [4,5,6]}
六.字典的其他操作
>>> #setdefault
>>> zoo2 = {"a101":"zebra","b202":"chimpanzee","c303":"lion"}
3 >>> zoo2.setdefault("a101","cat") #setdefault 判断key是否在dict中,若在则不做修改,若不在则将新key添加至dict中
'zebra'
>>> zoo2
{'a101': 'zebra', 'b202': 'chimpanzee', 'c303': 'lion'}
7 >>> zoo2.setdefault("d404","elephant")
'elephant'
>>> zoo2
{'a101': 'zebra', 'b202': 'chimpanzee', 'c303': 'lion', 'd404': 'elephant'}
>>> >>> zoo2
{'c303': 'lion', 'd404': 'elephant'}
>>> dict_b = {1:2,2:3,"c4":"tiger"}
16 >>> zoo2.update(dict_b) #类似列表中的extend,若 dict_b中有和zoo2交叉的key,会更新为dict_b中的valu
>>> zoo2
{'c303': 'lion', 'd404': 'elephant', 1: 2, 2: 3, 'c4': 'tiger'} >>> #items
21 >>> zoo2.items() #将字典中的key、value值对,一对对拿出,生成为新列表
dict_items([('c303', 'lion'), ('d404', 'elephant'), (1, 2), (2, 3), ('c4', 'tiger')])
>>>
字典的方法有:fromkeys , pop , popitem , setdefault , clear , copy , keys , values , items , update , get
字典只能存字符串或者二进制:
如果想存其他格式的,要用str() 强制转换一下
Python—字典的操作的更多相关文章
- Python 字典(Dictionary)操作详解
Python 字典(Dictionary)的详细操作方法. Python字典是另一种可变容器模型,且可存储任意类型对象,如字符串.数字.元组等其他容器模型. 一.创建字典 字典由键和对应值成对组成.字 ...
- Python字典增删操作技巧简述
Python编程语言是一款比较容易学习的计算机通用型语言.对于初学者来说,首先需要掌握的就是其中的一些基础应用.比如今天我们为大家介绍的Python字典的相关操作,就是我们在学习过程中需要熟练掌握的技 ...
- !!Python字典增删操作技巧简述+Python字典嵌套字典与排序
http://developer.51cto.com/art/201003/186006.htm Python编程语言是一款比较容易学习的计算机通用型语言.对于初学者来说,首先需要掌握的就是其中的一些 ...
- 【python】Python 字典(Dictionary)操作详解
Python字典是另一种可变容器模型,且可存储任意类型对象,如字符串.数字.元组等其他容器模型.一.创建字典字典由键和对应值成对组成.字典也被称作关联数组或哈希表.基本语法如下: dict = {'} ...
- Python字典的操作与使用
字典的描述 字典是一种key-value的数据类型,使用就像我们上学用的字典,通过拼音(key)来查对应字的详细内容(value). 字典的特性 1.字典是无序的(不像列表一样有下标,它通过key来获 ...
- python 字典相关操作
字典 字典的增删改查 字典的创建方式: # 创建字典类型 info = { 'name':'李白', 'age':'25', 'sex':'男' } msg = { 'user01':'Longzel ...
- python字典的操作
思维导图如下 1.字典的增加 dic1={'name':'wujie','age':18,'gender':'男'} dic1['profession']='python全栈' dic1.setdef ...
- python 字典元素操作
#字典创建>>> dict2 = { 'abc': 123, 98.6: 37 }>>> dict2[98.6]37>>> dict2[" ...
- python 字典所有操作
# 字典的创建# dict1 = {}# print(type(dict1))## dict2 = {# 'name':'汪峰',# 'sex':'男',# 'hiredate':'1997-10-2 ...
随机推荐
- Centos7下安装Docker(详细的新手装逼教程)
早就听说过Docker,一直不清楚是个啥,今天捣鼓了一下,这里做个记录. --------------------------------------------------------------- ...
- linux下查看CPU、内存、磁盘信息
1.查看CPU信息# 总核数 = 物理CPU个数 X 每颗物理CPU的核数 # 总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数 # 查看物理CPU个数cat /proc/c ...
- 2019年度【计算机视觉&机器学习&人工智能】国际重要会议汇总
简介 每年全世界都会举办很多计算机视觉(Computer Vision,CV). 机器学习(Machine Learning,ML).人工智能(Artificial Intelligence ,AI) ...
- JaCoCo在Tomcat服务器上监控代码覆盖率的使用方法
简介 Jacoco是一个开源的覆盖率工具.Jacoco可以嵌入到Ant .Maven中,并提供了EclEmma Eclipse插件,也可以使用JavaAgent技术监控Java程序.很多第三方的工具提 ...
- C++引用和const引用、常量指针、指针常量
1.引用.常量引用 引用主要被用做函数的形式参数--通常将类对象传递给一个函数. 引用在内部存放的是一个对象的地址,它是该对象的别名.引用不占用内存,因为取地址引用的值和被引用变量的地址相同.但是ob ...
- linux命令之pssh命令
查看一下pssh命令的帮助文档: [root@test2 ~]# pssh --version [root@test2 ~]# pssh --help Usage: pssh [OPTIONS] co ...
- jQuery 字符串拼接
jQuery 字符串拼接 // 字符串加变量拼接 $('#id 标签名[属性名="' + 变量 + '"]')
- Android组件系列----Intent详解
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/3 ...
- 如何在基于Bytom开发过程中集成IPFS
本文介绍了基于Bytom开发过程中集成IPFS. step1: 搭建bytom节点 比原相关资料:https://github.com/Bytom-Community/Bytom_Docs 搭建byt ...
- [POI1999][LOJ10112]原始生物
典型的有向图K笔画的问题 最后答案就是n+1-1+k 1笔画有一点入度比出度少1 k笔画则统计入度比出度少的点中所有少的总和 #include<bits/stdc++.h> using n ...