校招季——Python笔记四

本文详细介绍了Python中字典的基本概念及使用方法,包括字典的创建、访问、更新和删除等基本操作,以及如何利用字典进行字符串格式化。此外还深入探讨了字典的各种方法如clear、copy、fromkeys等的使用场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

四.         字典

1.      字典是由键值对组成的,键和值间用冒号隔开,项之间用逗号隔开,整个字典由大括号表示。

2.      字典可以用dict创建,需要一个映射关系的参数(其他字典或包含多个元组的序列),也可以用关键字参数来创建字典。

>>> dict1 = {'age':42, 'name':'Sam', 'city':'New York'}

>>> dict2 = dict(dict1)

>>> dict3 = dict([('name','Sam'),('age',42)])

>>> dict4 = dict(name = 'Sam', age = 42)

>>> dict1

{'age': 42, 'name': 'Sam', 'city': 'New York'}

>>> dict2

{'age': 42, 'name': 'Sam', 'city': 'New York'}

>>> dict3

{'age': 42, 'name': 'Sam'}

>>> dict4

{'age': 42, 'name': 'Sam'}

3.      字典和序列类似的行为有:len[]访问符、del删除、in成员资格检查。字典的[]可以直接完成插入的功能。

4.      可以用字典来格式化字符串。只要能在字典中找到字符串中的关键字,就能格式化字符串,不需要用到字典中的所有元素。字符串中的关键字要用括号括起来,后面接上正常的格式化控制符。

>>> "%(name)s's city is %(city)s" % dict1

"Sam's city is New York"

5.      字典方法:

1)     clear:清空字典。原地操作,无返回值。

2)     copy:浅复制字典。如果想深复制则要用deepcopy

3)     fromkeys:使用给定的键建立字典,每个值默认为None

>>> dict.fromkeys(['name', 'age'])

{'age': None, 'name': None}

4)     get:用[]访问字典中不存在的项时会出错,用get时则会返回None,也可以自定义这个返回值。

>>> print({}.get('name'))

None

>>> print({}.get('name', 'N/A'))

N/A

5)     items:返回包含所有字典项的列表,其中每个键值对为一个元组。iteritems返回这个列表的迭代器。

>>> dict1.items()

dict_items([('age', 42), ('name', 'Sam'), ('city', 'New York')])

6)     keys:返回包含所有键的列表。iterkeys:返回迭代器。

7)     values:返回包含所有值的列表。itervalues:返回迭代器。

8)     pop:删除指定的键值对,并返回这个值。

9)     popitem:随机弹出并删除某项。在要依次处理并删除项时比较有用。

10)   setdefault:设定字典中某键的默认值,如果只有键名则默认为None。当键不存在时会插入这个键,否则会返回当前键值而不改变它。

>>> dict3.setdefault('city')

>>> dict3

{'age': 42, 'name': 'Sam', 'city': None}

>>> dict3.setdefault('Nation','Nowhere')

'Nowhere'

>>> dict3

{'age': 42, 'Nation': 'Nowhere', 'name': 'Sam', 'city': None}

11)   update:用一个字典项更新另外一个字典。新字典中的项会添加到旧字典中,并更新相同的项。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值