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中没有一个专门的语法代表常量,程序员约定俗成用变量名全部大写代 ...
随机推荐
- MySQL6
MySQL数据库6 1. 集群概述 性能达到瓶颈的解决方案 Scale Up 向上扩展能力,如增加更好的硬件固态磁盘,加大内存等,成本高,效果不显著 Scale Out 向外扩展,例如建立更多的服务器 ...
- buf.readInt32BE()
buf.readInt32BE(offset[, noAssert]) buf.readInt32LE(offset[, noAssert]) offset {Number} 0 <= offs ...
- buf.write()
buf.write(string[, offset[, length]][, encoding]) string {String} 需要被写入到 Buffer 的字节 offset {Number} ...
- 【Codeforces 992B】Nastya Studies Informatics
[链接] 我是链接,点我呀:) [题意] 题意 [题解] 因为gcd(a,b)=x 所以设a = nx b = mx 又有ab/gcd(a,b)=lcm(a,b)=y 则nmx = y 即n(m*x) ...
- PHP中HTTP_X_FORWARDED_FOR 和 REMOTE_ADDR使用详解
1.REMOTE_ADDR:浏览当前页面的用户计算机的ip地址 2.HTTP_X_FORWARDED_FOR: 浏览当前页面的用户计算机的网关 3.HTTP_CLIENT_IP:客户端的ip 在PHP ...
- Contemplation! Algebra 矩阵快速幂
Given the value of a+b and ab you will have to find the value of a n + b n Input The input file cont ...
- Angularjs中添加HighCharts
一. 添加基本配置 1. 添加指令 angular.module('newApp') .directive('dpHighchart', ['$rootScope', function($rootSc ...
- MySQL: Create Master - Slave Servers
http://www.unixmen.com/setup-mariadb-master-slave-replication-in-centos-7/ and http://www.rackspace. ...
- HDFS学习笔记(2)hdfs_shell & JavaAPI
FileSystem shell指令 官方文档: HDFS Commands Reference appendToFile cat checksum chgrp chmod chown copyFro ...
- HTML5权威指南之—第三章
HTML页面上元素的焦点能够通过"tab"键在各个元素之间切换,使用"tabindex"属性能够改变默认的转移顺序 Tabindex为1的元素会首先被选中.然后 ...