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

pythonserver side programmingprogramming

字典视图对象包括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']

相关文章