设为首页 加入收藏

TOP

10python字典(四)
2023-07-25 21:25:28 】 浏览:83
Tags:10python 字典
42' }, 'Cecil': { 'phone': '3158', 'addr': 'Baz avenue 90' } } # 电话号码和地址的描述性标签,供打印输出时使用 labels = { 'phone': 'phone number', 'addr': 'address' } name = input('Name: ') # 要查找电话号码还是地址 request = input('Phone number (p) or address (a)? ') # 使用正确的键 key = request # 如果request既不是'p'也不是'a' if request == 'p': key = 'phone' if request == 'a': key = 'addr' # 使用get提供默认值 person = people.get(name, {}) label = labels.get(key, key) result = person.get(key, 'not available') # 才打印信息 print("{}'s {} is {}.".format(name, label, result))
  • items

方法items返回一个包含所有字典项的列表,其中每个元素都已(key, value)的形式展示。其中排序是不确定的。

返回值属于一种名称为字典视图的特殊类型,可迭代,可检查长度。字典视图生成后不会复制原字典,即使修改了原字典。

可以使用list将字典视图转换为列表。

>>> 
>>> d = {'title': 'Python Web Site', 'url': 'http://www.python.org', 'span': 0}
>>> d.items()
dict_items([('title', 'Python Web Site'), ('url', 'http://www.python.org'), ('span', 0)]) # 返回值属于一种名称为字典视图的特殊类型,可迭代,可检查长度
>>>
>>> it = d.items()
>>> len(it)
3
>>> ('span', 0) in it
True
>>>
>>> d['span'] = 1  # 修改字典d并不影响字典视图it
>>> ('span', 0) in it
False
>>> d['span'] = 0   
>>> ('span', 0) in it
True
>>>
>>> l = list(d.items())  # 使用list方法将字典视图转换为列表
>>> l
[('title', 'Python Web Site'), ('url', 'http://www.python.org'), ('span', 0)]
>>> 
  • keys

方法keys返回一个字典视图,其中包含指定字典中的键。

>>> 
>>> d = {'title': 'Python Web Site', 'url': 'http://www.python.org', 'span': 0}
>>> d.keys() 
dict_keys(['title', 'url', 'span'])
>>>
  • values

方法values返回一个由字典中的值组成的字典视图。不同于方法keys,方法values返回的视图可能包含重复的值。

>>> 
>>> d = {}
>>> d[1] = 1
>>> d[2] = 2 
>>> d[3] = 3 
>>> d[4] = 1 
>>> d
{1: 1, 2: 2, 3: 3, 4: 1}
>>> d.values()
dict_values([1, 2, 3, 1])
>>>
  • pop

方法pop可用于获取与指定键关联的的值,并将该键值对从字典中删除。

>>> 
>>> d = {'x': 1, 'y': 2, 'z': 3}
>>> d.pop('x')
1
>>> d
{'y': 2, 'z': 3}
>>>
  • popitem

方法popitem类似于list.pop,但list.pop弹出列表的最后一个元素,而popitem随机弹出一个字典项(因为字典项的顺序是不确定的,所有没有'最后一个元素'的概念),因此字典也没有类似列表中append的方法,无意义。

这个方法可以高效的逐个删除并处理所有字典项,因为这样无需先获取字典列表。

>>>
>>> d = {'title': 'Python Web Site', 'url': 'http://www.python.org', 'span': 0}
>>> d.popitem()
('span', 0)
>>> d
{'title': 'Python Web Site', 'url': 'http://www.python.org'}
>>>
  • setdefault

方法setdefault有点像get,有键时获取值,但是无键时可以添加键值对

>>> 
>>> d = {'title': 'Python Web Site', 'url': 'http://www.python.org', 'span': 0}
>>> d.setdefault('title')
'Python Web Site'
>>> d
{'title': 'Python Web Site', 'url': 'http://www.python.org', 'span': 0}
>>> d.setdefault('name', 'N/A') # setdefault指定的值不存在时,返回指定值并更新字典;如果没有指定,同get一样返回None
'N/A'
>>> d
{'title': 'Python Web Site', 'url': 'http://www.python.org', 'span': 0, 'name': 'N/A'}
>>> d.setdefault('type', 'Python') 
'Python'
>>> d
{'title': 'Python Web Site', 'url': 'http://www.python.org', 'span': 0, 'name': 'N/A', 'type': 'Python'}
>>>
  • update

方法update使用一个字典中的项来更新另一个字典,如果没有就添加,如果有就更新。

>>> 
>>> d = {'title': 'Python Web Site', 'url': 'http://www.python.org
首页 上一页 1 2 3 4 下一页 尾页 4/4/4
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Python装饰器实例讲解(一) 下一篇Python基础之网络编程:7、网络并..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目