字典的操作:

#字典的本质其实是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—字典的操作的更多相关文章

  1. Python 字典(Dictionary)操作详解

    Python 字典(Dictionary)的详细操作方法. Python字典是另一种可变容器模型,且可存储任意类型对象,如字符串.数字.元组等其他容器模型. 一.创建字典 字典由键和对应值成对组成.字 ...

  2. Python字典增删操作技巧简述

    Python编程语言是一款比较容易学习的计算机通用型语言.对于初学者来说,首先需要掌握的就是其中的一些基础应用.比如今天我们为大家介绍的Python字典的相关操作,就是我们在学习过程中需要熟练掌握的技 ...

  3. !!Python字典增删操作技巧简述+Python字典嵌套字典与排序

    http://developer.51cto.com/art/201003/186006.htm Python编程语言是一款比较容易学习的计算机通用型语言.对于初学者来说,首先需要掌握的就是其中的一些 ...

  4. 【python】Python 字典(Dictionary)操作详解

    Python字典是另一种可变容器模型,且可存储任意类型对象,如字符串.数字.元组等其他容器模型.一.创建字典字典由键和对应值成对组成.字典也被称作关联数组或哈希表.基本语法如下: dict = {'} ...

  5. Python字典的操作与使用

    字典的描述 字典是一种key-value的数据类型,使用就像我们上学用的字典,通过拼音(key)来查对应字的详细内容(value). 字典的特性 1.字典是无序的(不像列表一样有下标,它通过key来获 ...

  6. python 字典相关操作

    字典 字典的增删改查 字典的创建方式: # 创建字典类型 info = { 'name':'李白', 'age':'25', 'sex':'男' } msg = { 'user01':'Longzel ...

  7. python字典的操作

    思维导图如下 1.字典的增加 dic1={'name':'wujie','age':18,'gender':'男'} dic1['profession']='python全栈' dic1.setdef ...

  8. python 字典元素操作

    #字典创建>>> dict2 = { 'abc': 123, 98.6: 37 }>>> dict2[98.6]37>>> dict2[" ...

  9. python 字典所有操作

    # 字典的创建# dict1 = {}# print(type(dict1))## dict2 = {# 'name':'汪峰',# 'sex':'男',# 'hiredate':'1997-10-2 ...

随机推荐

  1. 商务通服务器版LR_Data目录下相关配置文件

    SiteSetting.config 这个文件保存权限角色(超级管理员,管理员等)角色权限.弹窗图片.客服的自动应答等内容. operatorsql8.config SQLite 数据库文件,保存登录 ...

  2. Python类中的__init__() 和 self 的解析

    原文地址https://www.cnblogs.com/ant-colonies/p/6718388.html 1.Python中self的含义 self,英文单词意思很明显,表示自己,本身. 此处有 ...

  3. json.dumps与json.dump的区别 json.loads与json.load的区别

    json.dumps是将一个Python数据类型列表进行json格式的编码解析, 示例如下: >>> import json #导入python 中的json模块>>&g ...

  4. python学习之数组二

    作用于数组的函数: 通用函数:函数基于元素的,以单元方式作用于数组的,返回的是与原数组具有相同形状的数组. 不通用函数(数组函数):函数能以行或者列的方式作用于整个矩阵:如果没有提供任何参数时,它们将 ...

  5. 59.phpstudy升级Mysql的正确姿势

    phpstudy升级Mysql的正确姿势 phpstudy很糟心,不能选择mysql的版本,所以就强制升级. 下载mysql 首先要到官网上去下载你想要的mysql版本. 下载网址:Mysql官网地址 ...

  6. Qt 拷贝内容到粘贴板 || 获取粘贴板内容

    QString source = ui->textEdit_code->toPlainText(); QClipboard *clipboard = QApplication::clipb ...

  7. git----------git:如何让git识别我修改了文件夹名字和文件名字的大小写问题。

    修改每个项目里面的隐藏的.git文件里面的config文件.将箭头指的原本是true改成false.

  8. Openstack-Ceilometer-Alarm运行机制

    1校验 对alarm列表进行定时监测,如果发现与设置的limit值不满足,则发出警报 监控服务分为三种:默认服务,单进程校验服务和分布式校验服务.根据配置来决定,默认配置:default Alarm状 ...

  9. 记录Js 文本框验证 与 IE兼容性

    最近的日常就是将测试小姐姐提交的bug进行修改,想来这种事情还是比较好开展的,毕竟此项目已上线一年多,现在只是一些前端的问题需要改正.实际上手的时候并不是这样,原项目是在谷歌上运行,后来由于要新增一个 ...

  10. 《CSS世界》读书笔记(五) --height:100%

    <!-- <CSS世界> 张鑫旭著 --> 相对简单而单纯的height:auto height:auto比width:auto简单的多,原因在于: CSS默认流是水平方向的, ...