打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Python入门(7)——元组与字典

元组


元组的定义


    不可修改的列表称为元组。元组定义与列表定义的区别在于列表使用 [ ] 标识,而元组使用 ( ) 标识。严格地说,元组是由逗号 标识的,圆括号只是让元组看起来更整洁。下面的例子演示了元组如何定义。

>>> tuple1 = ('a', 'b', 'c')>>> print(tuple1)('a', 'b', 'c')>>> type(tuple1)<class 'tuple'>>>> tuple2 = 'a',>>> print(tuple2)('a',)>>> type(tuple2)<class 'tuple'>

元组的使用


    因为元组是不可修改的列表,所以元组没有增加元素、修改元素、删除元素等操作,但可以对元组进行遍历。下面的例子演示了如何遍历元组。

>>> tuple3 = 'a''b''c''d''e'>>> for x in tuple3:    print(x)

abcde

字典

    字典其实就是一系列键值对,类似于C++/Java的Map结构。每个键都与一个值相关联,你可以使用键来访问相关联的值。


字典的创建


下面的例子演示了如何创建一个字典。

>>> student = {'id': 1203, 'name': 'Mary', 'age': 22}>>> print(student){'id': 1203, 'name': 'Mary', 'age': 22}>>> type(student)<class 'dict'>

    花括号中每一个键值对以逗号隔开,键与值用冒号隔开。在字典中,你想存储多少个键值对都可以。


取字典中指定键的值


    在字典中获取指定键的值与访问列表中指定索引的值类似,只需指定字典名和键即可。下面的例子演示了如何访问字典中指定键的值。

>>> student = {'id': 1203, 'name': 'Mary', 'age': 22}>>> print(student['name'])Mary

    但是,上面取值的方法在你指定键不存在的情况下,就会报错。所以,我们一般用 get() 方法来取字典中指定键的值。当然,你也可以在 get() 方法添加第二个参数,即指定没有此键存在时要返回的值。

>>> student = {'id': 1203, 'name': 'Mary', 'age': 22}>>> print(student['city'])Traceback (most recent call last):  File "<pyshell#56>", line 1, in <module>    print(student['city'])KeyError: 'city'>>> print(student.get('city'))None>>> print(student.get('city','No point value assigned.'))No point value assigned.

在字典中添加键值对


    添加键值对,只需把要添加的键放在字典名的 [ ] 里面,值用赋值运算符把对应的值赋给它即可。下面的例子演示了如何在字典中添加键值对。

>>> student = {'id': 1203, 'name': 'Mary', 'age': 22}>>> student['city'] = 'Beijing'>>> print(student){'id': 1203, 'name': 'Mary', 'age': 22, 'city': 'Beijing'}

空字典的创建


    有时,我们要用字典来存储用户提供的数据,通常会提前创建一个空字典,在需要添加数据时用添加键值对的方式进行添加。

>>> student = {}>>> student['id'] = 12345>>> student['name'] = 'John'>>> print(student){'id': 12345, 'name': 'John'}

修改字典中的值


下面的例子演示了如何修改字典中指定键的值。

>>> student = {'id': 1203, 'name': 'Mary', 'age': 22}>>> student['age'] = 18>>> print(student){'id': 1203, 'name': 'Mary', 'age': 18}

删除字典中的键值对


    对于字典中不需要用到的键值对,我们可以用 del 语句把键值对删除。下面的例子演示了如何删除指定的键值对。

>>> student = {'id': 1203, 'name': 'Mary', 'age': 22}>>> del student['age']>>> print(student){'id': 1203, 'name': 'Mary'}

遍历字典中所有的键值对


    利用 items() 方法,在利用for循环,我们就可以遍历字典中所有的键值对。

>>> student = {'id': 1203, 'name': 'Mary', 'age': 22}>>> for key, value in student.items():    print(f'\nkey = {key}')    print(f'value = {value}')

key = idvalue = 1203
key = namevalue = Mary
key = agevalue = 22

遍历字典中所有键


    使用 keys() 方法,其返回所有键的列表,可以取到字典中的所有键。当然,遍历字典时默认会遍历所有键,所以我们可以直接遍历字典而不必调用 keys() 方法。

>>> student = {'id': 1203, 'name': 'Mary', 'age': 22}>>> for key in student.keys():    print(key, end = '\t')
 id name age>>> for key in student: print(key, end = '\t')

id name age

遍历字典中所有值


    使用 values() 方法,可以取到字典中的所有值,但是这里并没有剔除重复项,如果想要剔除重复项,可以使用 set() 函数把列表转换为集合。

>>> scores = {'Chinese': 95, 'Math': 96, 'English': 95}>>> for score in scores.values():    print(score)
959695>>> for score in set(scores.values()):    print(score)
9695

检查字典中是否存在键或值


    调用上面讲过的获取键列表和值列表的方法,搭配使用 in 或 not in 操作符就能检查字典中是否存在键或值。

>>> scores = {'Chinese'95'Math'96'English'95}>>> 'Math' in scores.keys()True>>> 100 in scores.values()False

设置字典中某个键的默认值


    我们常常需要为字典中的某个键设置一个默认值,当该键没有任何值时使用它。使用 setdefault() 方法就可以设置字典中某个键的默认值,传入两个参数,一个是要检查的键,第二个是当该键不存在时要设置的值。当该键存在时,返回键的值。当该键不存在时,则返回我们设置的值。

>>> scores = {'Chinese': 95, 'Math': 96}>>> scores.setdefault('English', 0)0>>> print(scores){'Chinese': 95, 'Math': 96, 'English': 0}>>> scores.setdefault('English', 99)0>>> print(scores){'Chinese': 95, 'Math': 96, 'English': 0}

    当然,我们可以在字典中嵌套列表,可以在列表中嵌套字典,也可以在字典中嵌套字典,在列表中嵌套列表。查询项、添加项、修改项和遍历项的方法基本类似,所以在此处不再讲述这些方法。

更多内容请点击

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Python基础——遍历列表、元组和字典
Python基础——元组,字典,集合
基础语法第6关笔记
Python第五章-内置数据结构04-字典
第11天:Python 字典
python的【字典dict】:创建、访问、更新、删除;查看键、值、键值对;遍历;排序
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服