python基础-字典dict
字典-dict
用途:
定义方法:通过{} 来存储数据,通过key:value (键值对)来存储数据,每个键值对通过逗号分隔。在键值对中,key 是不可变的数据类型,value 是任意数据类型
def dict_setd():
# 第一种定义方式
d1 = {'name': 'egon', 'age': 84}
# 第二种定义方式
d2 = dict({'name': 'egon', 'age': 84})
# 第三种定义方式
l1 = ['name', 'age']
l2 = ['egon', 18]
z1 = zip(l1, l2)
d3 = dict(z1)
# 打印定义的字典
print(d1)
print(d2)
print(d3)
dict_setd()
常用方法:
按照key : value 映射关系取值,可存可取
# 按照key:value映射关系取值,可存可取。
def dict_getvalue():
d1 = {'name': 'egon', 'age': 73}
print(d1) # 取出d1 中的值
# 当字典中存在key 时,修改value值,如果key 不存在,新增键值对
d1['name'] = 'alex'
d1['gender'] = 'male'
print(d1)
dict_getvalue()
成员判断 in / not in ,返回布尔值
# 成员运算in / not in:判断key 是否在字典中存在(不是判断value),返回布尔值
def dict_in():
d1 = {'name': 'egon', 'age': 73}
print('egon' in d1)
dict_in()
len:获取当前字典中键值对的个数
# len:获取当前字典中键值对的个数
def dict_len():
d = {'name': 'alex', 'age': 73, 'gender': 'male'}
print(len(d))
dict_len()
get:获取指定key 的值,如果值不存在,默认返回None,可修改默认的返回值
# get:获取指定key 的值,如果值不存在,默认返回None,可修改默认返回值
def dict_get():
d = {'name': 'alex', 'age': 73}
print(d.get('gender')) # 结果None
print(d.get('gender', 'male')) # 结果male
dict_get()
keys,values,items:获取字典中的key,value,键值对
# keys,values,items
def dict_kvi():
d = {'name': 'alex', 'age': 73}
print(d.keys()) # 结果为:返回所有键的列表:['name','age']
print(d.values()) # 结果为:返回所有值的列表:['alex',73]
print(d.items()) # 结果为:返回所有的键值对,其中返回值是以列表套元组的形式体现,每一个键值对都存在元组中 # 根据键值对或者key 和value
for key, value in d.items():
print(key, value)
dict_kvi()
pop:通过指定的key 弹出对应的键值对,返回值为键值对中的值
# pop:删除,将指定的key 弹出,返回值为key 对应的value
def dict_pop():
d = {'name': 'alex', 'age': 73, 'gender': 'male'}
a = d.pop('name')
print(d) # 字典中不再有'name':'alex'这个键值对
print(a) # 'name' 对应的值:alex
dict_pop()
popitem:随机弹出一组键值对,返回值是以元组形式表示的键值对信息
# popitem:随机将一组键值对弹出,返回值为以元组展示的键值对
def dict_popitem():
d = {'name': 'alex', 'age': 73, 'gender': 'male'}
a = d.popitem()
print(a)
print(d)
dict_popitem()
update:用新字典替换旧字典
# update:用新字典替换就字典
def dict_upd():
d = {'name': 'alex', 'age': 73, 'gender': 'male'}
d.update({'hobby':'read'}) # 当要替换的键值对不存在时,将该键值对添加到字典中
d.update({'name':'egon'}) # 当要替换的键值对存在时,直接修改该键值对的值
print(d)
dict_upd()
fromkeys:生成一个新字典,需要两个参数。第一个参数必须是可迭代对象,这里会以可迭代对象中的元素依次作为字典中的key,第二个参数则为key 的value 值,组成一个新的字典
# dict.fromkey:生成一个新字典,第一个参数为可迭代对象,将可迭代对象中的元素依次作为key ,
# 第二个参数作为可迭代对象中元素的value ,组成一个新字典
def dict_fromkey():
print(dict.fromkeys([1,2,3],['ke','k1']))
dict_fromkey()
setdefault:指定的key 存在时,不修改键值对的内容,并返回键值对的value 值;如果不存在,则将指定的key 和value 作为新的键值对增加到字典中,并返回该value
# setdefault:字典中不存在指定的key 时,新增该键值对,并返回value;如果存在,不修改键值对,并返回value
def dict_sd():
d = {'name': 'alex', 'age': 73, 'gender': 'male'}
print(d.setdefault("hobby","read"))
print(d)
print(d.setdefault("name","egon"))
print(d)
dict_sd()
字典dict 是无序的、可变的、可存多个值的数据类型
python基础-字典dict的更多相关文章
- python基础——字典dict
1.概念: (1)字典dict,是一系列的键—值对.每个键key都和一个值value相映射.(字典是python中唯一的映射类型.) (2)每一项item,是一个键值对key—value对. (3)键 ...
- python基础——字典(dict)
字典是另一种可变容器模型,且可存储任意类型对象. 字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 . dict1 = {} ...
- Python基础:字典(dict)与集合(set)
查找场景下与列表的性能对比 字典与集合之所以高效的原因是:内部结构都是一张哈希表. 平均情况下插入.查找和删除的时间复杂度为 O(1). 假设有数量100,000的产品列表: import time ...
- python基础之dict、set及字符
python基础之dict.set及字符串处理 本节内容 字典介绍及内置方法 集合介绍 字符串处理 1.字典介绍及内置方法 字典是python中唯一的映射类型,采用键值对(key-value)的形式存 ...
- python基础——使用dict和set
python基础——使用dict和set dict Python内置了字典:dict的支持,dict全称dictionary,在其它语言中也称为map(映射),使用键-值(key-value)存储,具 ...
- 第四篇:python基础之dict、set及字符
python基础之dict.set及字符 python基础之dict.set及字符串处理 本节内容 字典介绍及内置方法 集合介绍 字符串处理 1.字典介绍及内置方法 字典是python中唯一的映射 ...
- python基础--字典
Python基础--字典 字典的常用函数: dict.clear( )--->无任何返回值 说明: 清除字典内的所有的元素 语法: In [5]: dict.clear? Type: metho ...
- python基础—字典
阅读文本需要3分钟,不建议跳读 节目清单 字典是python中最重要的数据类型,字典由“键-值”对组成的集合,字典中的“值”通过“键”来引用.这里将介绍字典的定义.访问.排序等功能. 字典的创建 字典 ...
- python基础(六)dict字典和文件操作open
字典dict 使用key来标注value的数据类型,key和value是一一对应的.在字典中key是唯一的,所以字典也是无序的. #定义一个字典 dict = { 'name' : 'sylar', ...
随机推荐
- yzoj P2371 爬山 题解
背景 其实 Kano 曾经到过由乃⼭,当然这名字⼀看⼭主就是 Yuno 嘛.当年 Kano 看见了由乃⼭,内⼼突然涌出了⼀股杜甫会当凌绝顶,⼀览众⼭⼩的 豪⽓,于是毅然决定登⼭.但是 Kano 总是习 ...
- 尝鲜 vue3.x 新特性 - CompositionAPI
0. 基础要求 了解常见的 ES6 新特性 ES6 的导入导出语法 解构赋值 箭头函数 etc... 了解 vue 2.x 的基本使用 组件 常用的指令 生命周期函数 computed.watch.r ...
- Unknown column 'user_id' in 'where clause'
mapper位置报错Unknown column 'user_id' in 'where clause' 可能是数据库中的字段user_id包含空格
- springmvc引入静态资源文件
如果web.xml中配置的DispatcherServlet请求映射为“/”, springmvc将捕获web容器所有的请求,当然也包括对静态资源的请求.springmvc会将他们当成一个普通请求处理 ...
- Map集合(双列集合)
Map集合(双列集合)Map集合是键值对集合. 它的元素是由两个值组成的,元素的格式是:key=value. Map集合形式:{key1=value1 , key2=value2 , key3=val ...
- Maya零基础新手入门教程第一部分:界面
第1步:菜单 如果您曾经使用过一个软件,那么您将习惯菜单!在Maya中,菜单包含用于在场景中工作的工具和操作.与大多数程序一样,主菜单位于Maya窗口的顶部,然后还有面板和选项窗口的单独菜单.您还可以 ...
- linux系统定时发送邮件
Linux Centos7系统下利用自带的mail发送邮件服务 简介 本章分为五部分. 第一部分是基于虚拟机下的CentOS 7环境定时发送邮件: 第二部分是基于在阿里云购买的CentOS 7服务器环 ...
- Python之selenium+pytesseract 实现识别验证码自动化登录脚本
今天写自己的爆破靶场WP时候,遇到有验证码的网站除了使用pkav的工具我们同样可以通过py强大的第三方库来实现识别验证码+后台登录爆破,这里做个笔记~~~ 0x01关于selenium seleniu ...
- 转 NAT技术详解
NAT产生背景 今天,无数快乐的互联网用户在尽情享受Internet带来的乐趣.他们浏览新闻,搜索资料,下载软件,广交新朋,分享信息,甚至于足不出户获取一切日用所需.企业利用互联网发布信息,传递资料和 ...
- opencv::积分图计算
利用积分图像,可以计算在某象素的上-右方的或者旋转的矩形区域中进行求和.求均值以及标准方差的计算,并且保证运算的复杂度为O(). #include <opencv2/opencv.hpp> ...