Python基础数据类型(五) dict字典
字典dict{}
字典数字自动排序
enumerate 枚举
for i,k in enumerate(dic,1) #第二个参数默认不写就是0 ---枚举
print(i,k)
dict,以{}来表示每一项用逗号隔开,内部元素用 key:value的形式来保存
定义
dict_l = {'jj':'林俊杰','jay':'周杰伦'}
dic = dict(k=1,k1=123)
查询效率非常高,通过Key来查找元素
内部使用key来计算一个内存地址(暂时),hash算法,key必须是不可变的数据类型(key是可哈希数据类型)
增
1.dic[''] =''
dic = {}
#徐峥:人在囧途
dic['徐峥']='人在囧途' #直接用key往里面存数据
dic = {'徐峥': '人在囧途'}
#如果key 已经存在,那么会替换掉原来的value
2.dic.setdefault('⭐')
dic.setdefault('黄秋生','头文字D')
#如果key存在了,不会执行新增
删
1.pop('key')
dic.pop('key') #指定key删除
2.popitem()
dic.popitem() #Python3.6版本默认删除最后一个键值对
3.del
del dic['key'] #删除
4.clear()
dic.clear() #清空字典
改
1.用key直接去改
dic = {'烟台':'李文浩','潍坊':'聂冰'}
dic['烟台']='李小龙' #dic = {'烟台':'李小龙','潍坊':'聂冰'}
2.update() dic.update({1:2,'a':'a1'})
有则改,无则增
dic = {'烟台':'李文浩','潍坊':'聂冰'}
dic1 = {'烟台':'李小龙','潍坊':'赵秋雨'}
dic.update(dic1)
#dic = {'烟台':'李小龙','潍坊':'赵秋雨'}
查
只能通过建获取值不能通过值获取建
1.最直观的,直接用key,存在就返回键对应的值,如果不存在报错
dic = {'烟台':'李文浩','潍坊':'聂冰'}
print(dic['烟台']) #李文浩
2.get方法,如果key不存在会返回None
print(dic.get('key','自己定义返回内容')) #李文浩
#如果不存在默认返回None,可以自己定义
- setdefault() 1.新增(先看有没有key,有就过,没有就执行新增)2.会根据key把值返回
value = dic.setdefault('key')
print(value) #返回vaule
字典的相关操作
直接for循环打印的是字典的key
1.对字典的遍历 keys()拿到的是 所有的key
dic = {'汪峰':'亚洲舞王','罗志祥':'大陆音乐的半壁江山'}
print(dic.keys()) #像列表但不是列表
for key in dic.keys():
print(dic[key]) #拿到value
2.valus() 拿到的是 所有的valu
prin(dic.values())
3.items() #拿到的是key和value [(key:value),(key:value),]
print(dic.items)
4.遍历字典
for k,v in dic.items():
print(k)
print(v)
5.字典本身是一个可迭代对象,可以直接进行for循环
for k in dic:
print(k)
3.8小数据池
Python基础数据类型(五) dict字典的更多相关文章
- Python 基础数据类型之dict
字典是另一种可变容器模型,且可存储任意类型对象.字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 ,格式如下所示:d = {k ...
- python基础之五:dict 字典
1.数据类型的划分:可变数据类型.不可变数据类型 不可变的有:元组(tuple).字符(str).整型(int).布尔型(bool) 它们都可以哈希 可变的:列表(list).set.字典(dict) ...
- Python基础数据类型-字典(dict)
Python基础数据类型-字典(dict) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客使用的是Python3.6版本,以及以后分享的每一篇都是Python3.x版本的哟 ...
- Python基础学习五
Python基础学习五 迭代 for x in 变量: 其中变量可以是字符串.列表.字典.集合. 当迭代字典时,通过字典的内置函数value()可以迭代出值:通过字典的内置函数items()可以迭代出 ...
- Python基础数据类型-列表(list)和元组(tuple)和集合(set)
Python基础数据类型-列表(list)和元组(tuple)和集合(set) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客使用的是Python3.6版本,以及以后分享的 ...
- Python基础数据类型之集合
Python基础数据类型之集合 集合(set)是Python基本数据类型之一,它具有天生的去重能力,即集合中的元素不能重复.集合也是无序的,且集合中的元素必须是不可变类型. 一.如何创建一个集合 #1 ...
- Python 入门之Python基础数据类型及其方法
Python 入门之Python基础数据类型 1. 整型:int 用于计算,用于比较 (在赋值的时候先执行等号右边的内容) 1.1 整数的加 a = 10 b = 20 print(a + b) 结果 ...
- 图解python | 基础数据类型
作者:韩信子@ShowMeAI 教程地址:http://www.showmeai.tech/tutorials/56 本文地址:http://www.showmeai.tech/article-det ...
- python基础数据类型1
python基础数据类型1 part1: ''' ''': 三个单引号用于换行的字符串 字符串可以相加(拼接)相乘(重复) 在Python中没有一个专门的语法代表常量,程序员约定俗成用变量名全部大写代 ...
随机推荐
- 微信小程序 setData动态修改数据数组的值
1.问题说明 有一组数据,用来存储图片路径,动态修改图片的路径来上传图片,而小程序JS只能通过事件获取时机和setData方法修改数据来改变view. 而用这样写的方式明显是错误的 2.解决办法 字符 ...
- 54.string field聚合以及fielddata原理初探
主要知识点: 直接对分词的term进行聚合后果 设置fielddata=true 直接用.keyword进行聚合 doc value 的性能问题 一.直接对分词的term进行聚合后果 ...
- SQL学习笔记:一些高级语句
现在以MySQL为模板.学习的方法和别的数据库写法上会有不同,但是思路基本一致. 用到的数据库表的格式: +----+--------------+-------------------------- ...
- hdu 5015 矩阵快速幂(可用作模板)
转载:http://blog.csdn.net/wdcjdtc/article/details/39318847 之前各种犯傻 推了好久这个东西.. 后来灵关一闪 就搞定了.. 矩阵的题目,就是构造 ...
- hdu 2844 多重背包二进制优化
//http://www.cnblogs.com/devil-91/archive/2012/05/16/2502710.html #include<stdio.h> #define N ...
- Win32编程API 基础篇 -- 6.菜单和图标
菜单和按钮 例子:菜单1 本小节仅仅向你展示如果向你的窗口中加入一个基本的菜单,通常你会用到一个提前制作好的菜单资源,这会是一份.rc文件并且会被编译链接进你的.exe可执行程序中.这是具体的流程做法 ...
- P - FatMouse and Cheese 记忆化搜索
FatMouse has stored some cheese in a city. The city can be considered as a square grid of dimension ...
- 10、Java并发性和多线程-线程安全与不可变性
以下内容转自http://ifeve.com/thread-safety-and-immutability/: 当多个线程同时访问同一个资源,并且其中的一个或者多个线程对这个资源进行了写操作,才会产生 ...
- Swift具体解释之六----------------枚举、结构体、类
枚举.结构体.类 注:本文为作者自己总结.过于基础的就不再赘述 ,都是亲自測试的结果.如有错误或者遗漏的地方.欢迎指正,一起学习. 1.枚举 枚举是用来定义一组通用类型的一组相关值 ,关键字enum ...
- putty SSH出现乱码
解决方法如下: 打开PuTTY主程序 选择window-〉Appearance-〉Font settings-〉点击Change.按钮,字体中选择"新宋体". 选择window-〉 ...