python中的列表、元组、字典、集合(字典篇)

本文介绍了Python中的字典数据类型,包括其定义、元素结构(键值对)、可变性、访问方式(下标、get、setdefault)、元素添加与修改(下标赋值、update)、删除操作(pop、popitem、clear),以及如何遍历和处理字典元素。
摘要由CSDN通过智能技术生成
数据类型定义符号访问元素是否可变是否重复是否有序
列表 [ ]索引可变可重复有序
元组()索引不可变可重复有序
字典{key:value}可变可重复无序
集合{ }可变不可重复无序

字典概念

在python语言中,字典属于内置容器类,其中可以包含若干个元素,每个元素包含“键”和“值”两部分,两部分之间使用英文半角冒号分隔,表示一种对应关系或映射关系。

字典元素的“键”可以是python中任意不可变数据,如整数、实数、复数、字符串、元组等类型。但不能使用列表、集合、字典或其他可变类型作为字典的“键”,包含列表缝可变数据的元组也不能作为字典的“键”。另外,字典中的“键”不允许重复且必须可哈希,“值”是可以重复的。

字典是可变的,可以动态的增加、删除元素,也可以修改元素的“值”。

字典的创建与删除

字典元素访问

(1)字典支持下标运算,把“键”作为下标并返回对应的“值”,如果字典中不存在这个“键”会抛出异常。使用下标访问元素“值”时,一般建议配合选择结构或者异常处理结构,以免代码异常发生崩溃。

(2)推荐使用字典的get()方法获取指定“键”对应的“值”,如果指定的“键”不存在,get()方法会返回空值或指定的默认值。

(3)字典对象的setdefault()方法也可以用于获取字典中元素的“值”或者增加新元素。如果当前字典对象中没有以key为“键”的元素则插入以key为“键”、以default为“值”的新元素并返回default的值,如果当前字典中有以key为“键”的元素则直接返回对应的“值”。

(4)字典对象支持元素迭代,可以将其转换位列表或元组,也可以使用for循环遍历其中的元素。在这样的场合中,默认情况是遍历字典的“键”,如果需要遍历字典的元素必须使用字典对象的items()方法明确说明,如果需要遍历字典的“值”则必须使用字典对象的values()方法明确说明。当使用len()、max()、min()、sum()、sorted()、enumerate()、map()、filter()等内置函数以及成员测试运算符“in”对字典对象进行操作时,也遵循同样的约定。

字典元素添加与修改

(1)当以指定“键”为下标为字典元素赋值时,有以下两种含义:

①若该“键”存在,表示修改该“键”对应元素的“值”;

②若该“键”不存在,表示添加一个新元素。

(2)使用字典对象的update()方法可以将另一个字典或可迭代对象(要求每个元素都为包含2个值的元组或类似结构)中的元素一次性全部添加到当前字典对象,如果两个字典中存在相同的“键”,则以另一个字典中的“值”为准对当前字典进行更新。

字典元素删除

可以使用字典对象的pop()删除指定“键”对应的元素,同时返回对应的“值”。字典方法popitem()方法用于按LIFO(后进先出)的顺序删除并返回一个包含两个元素的元组,其中的两个元素分别是字典元素的“键”和“值”。字典方法clear()用于清空字典中所有元素。另外,也可以使用del删除指定的“键”对应的元素。

  • 27
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值