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 ...
随机推荐
- 商务通服务器版LR_Data目录下相关配置文件
SiteSetting.config 这个文件保存权限角色(超级管理员,管理员等)角色权限.弹窗图片.客服的自动应答等内容. operatorsql8.config SQLite 数据库文件,保存登录 ...
- 十、无事勿扰,有事通知(1)——NSNotification
概述 很久很久以前,有一只菜鸟正在美滋滋的撸着他的嵌入式C代码.然而有一天,老板对菜鸟说:“别撸C了,从现在开始你就写swift开发ios了.”菜鸟一脸懵逼,但还是照做了. 又有一天,菜蛋谄媚的对菜鸟 ...
- Python之猴子补丁
1.在运行时,对属性,方法,函数等进行动态替换 2.其目的往往是为了通过替换,修改来增强,扩展原有代码的能力 #test2.py class Person: def get_score(self): ...
- Django简单实例
一.前戏-MVC框架与MTV框架 1.MVC MVC(Model View Controller),是一种软件工程开发的架构模式,不仅适用于软件开发,而且适用于其他广泛的设计和组织工作,主要思想通过分 ...
- rocketmq源码打包步骤
1,从git上面克隆好源码之后,进入rocketmq目录,执行: mvn -Prelease-all -DskipTests clean install 2,打包完成之后,进入distribution ...
- Select input 两个元素的宽度高度跟设定值不一致的问题
在做登录框的时候,需要一个select 元素作为账号输入,一个input作为密码输入框.在css 文件中,将这两个元素的position 设置为relative ,并且width 设置为100%.刷新 ...
- sed command
https://blog.csdn.net/solaraceboy/article/details/79272344
- Oracle经典书籍
Oracle实用教程 深入浅出Oracle
- js cookie缓存处理
function setCookie(cnameList,cvalueList,exdays){ var d = new Date(); d.setTime(d.getTime()+(exdays*2 ...
- 一道简单树形dp
题意:给定一棵树,从中选出一些节点,使得不成父子关系的节点对数最多.问这个最大值是多少. 思路:首先既然是给定一颗树,先要选择合适的数据结构,来保存这颗树.由于这颗树只关心根节点在哪里,所以只需要用一 ...