Python 字典视图对象支持的内建函数

Python 字典视图对象支持的内建函数

字典视图对象包括dict.keys(),dict.values()和dict.items()。它们用于获取Python中字典元素的动态视图。这些对象会反映对字典所做的更改。

为了从这些视图对象中检索数据或执行各种操作,Python支持5个内建函数。它们如下所示−

  • len(obj)

  • iter(obj)

  • reversed(obj)

  • sorted(obj)

  • ist(obj)

我们将在本文中讨论上述所有函数。

len(obj)方法

len(obj)方法接受一个视图对象作为参数,并返回字典中项的数量。

示例

以下是一个示例,返回字典中项的总数−

d = {'g': 1, 'b': 2, 'c': 3, 'd': 4}
k=d.keys()
print (len(k))
v=d.values()
print (len(v))
i=d.items()
print (len(i))

输出

上述代码的输出如下:

4
4
4

iter(obj)方法

使用iter(obj)方法,按插入的顺序遍历字典的键。它接受任何视图对象作为参数,然后返回一个遍历字典中键、值或项的迭代器。

示例1

下面是一个示例,用 list() 构造函数遍历键并将迭代器转换为列表:

d = {'g': 1, 'b': 5, 'c': 3, 'd': 4}
k=d.keys()
print (iter(d))
#Converting iterator to list
print (list(iter(d)))

输出

<dict_keyiterator object at 0x7f825131df40>
['g', 'b', 'c', 'd']

示例2

以下是使用 for 循环遍历迭代器中元素的值的示例:

d = {'g': 1, 'b': 5, 'c': 3, 'd': 4}
v=d.values()
print (iter(v))

#Accessing elements in iterator using for loop
for i in iter(v):
   print (i)

输出

<dict_valueiterator object at 0x7f0174c31f90>
1
5
3
4

示例3

以下是一个示例,通过使用next()函数迭代访问迭代器中的元素:

d = {'g': 1, 'b': 5, 'c': 3, 'd': 4}
i=d.items()
i1=iter(i)

#Accessing elements in itertaor using next() fucntion
print (next(i1))
print (next(i1))
print (next(i1))

输出

('g', 1)
('b', 5)
('c', 3)

reversed(obj)方法

与iter(obj)方法相反,reversed(obj)方法按照插入顺序的相反顺序运行迭代器。这个内置函数以视图对象作为参数,并返回字典的键、值或项的反向迭代器。

示例

以下是一个以反向顺序返回字典的键、值和项的示例:

d = {'g': 1, 'b': 5, 'c': 3, 'd': 4}
k=reversed(d.keys())
print (list(k))
v=reversed(d.values())
print (list(v))
i=reversed(d.items())
print (list(i))

#return a reversed iterator of keys alone
d1=reversed(d)
print (list(d1))

输出

['d', 'c', 'b', 'g']
[4, 3, 5, 1]
[('d', 4), ('c', 3), ('b', 5), ('g', 1)]
['d', 'c', 'b', 'g']

sorted(obj)方法

sorted(obj)方法以视图对象为参数,并返回与字典的键、值或条目相对应的已排序列表。

示例

以下是按字母顺序打印字典条目的示例:

d = {'g': 1, 'b': 5, 'c': 3, 'd': 4}
print (sorted(d.keys()))
print (sorted(d.values()))
print (sorted(d.items()))
d1=print (sorted(d))

输出

['b', 'c', 'd', 'g']
[1, 3, 4, 5]
[('b', 5), ('c', 3), ('d', 4), ('g', 1)]
['b', 'c', 'd', 'g']

list(obj)方法

list(obj)函数以视图对象作为参数,并返回字典的键、值或字典项的列表。

示例

以下是一个打印字典项、键和值的示例:

d = {'g': 1, 'b': 5, 'c': 3, 'd': 4}
print (list(d.keys()))
print (list(d.values()))
print (list(d.items()))
d1=print (list(d))

输出

['g', 'b', 'c', 'd']
[1, 5, 3, 4]
[('g', 1), ('b', 5), ('c', 3), ('d', 4)]
['g', 'b', 'c', 'd']

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程