items()函数在python中的用法
CSDN 2024-06-29 15:05:01 阅读 61
items()
函数在python中的用法
在python中,
items()
是一个字典的常用内建函数,主要用于获取或设置对象中的单个元素。在python的推导式中,列表和集合也会用到items()
函数,但用得最多的还是在字典中。
items()
函数在python中的用法
在Python3中,字典是一种无序集合数据类型,由一个个的键值对构成,其中的键和值都可以是任何类型的对象。如果我们需要去遍历一个字典时就可以使用items()
函数来返回字典中的所有键值对,items()
方法会返回一个元素为元组的迭代器,每个元素表示字典中的一个键值对,第一个元素为键,第二个元素为值。items()
函数一般会和for
循环方法一起使用。
items()
方法是字典的内建函数,所以我们使用items()
方法只需要在字典名的后面加一个点,来调用items()
方法。items()
方法会返回一个字典视图对象。
items()
使用示例:
示例1:
# 创建字典
d1 = { '姓名': '张三', '年龄': 20, '性别': '男'}
# 获取字典所有的键值对
d2 = d1.items()
# 输出字典视图
print(d2)
# 循环迭代字典视图并输出键值对
for key, value in d2:
print(key, ':', value)
以上代码的执行结果为:
dict_items([('姓名', '张三'), ('年龄', 20), ('性别', '男')])
姓名 : 张三
年龄 : 20
性别 : 男
在这段代码中,如果直接打印d2,得到的是一个dict_items()
的元组对象。如果不需要查看元组对象,也可以直接用for循环
来遍历字典,得到每一个键值对,简化代码:
# 创建字典
d1 = { '姓名': '张三', '年龄': 20, '性别': '男'}
# 循环迭代字典并输出键值对
for key, value in d1.items():
print(key, ':', value)
以上代码执行结果为:
姓名 : 张三
年龄 : 20
性别 : 男
示例2:
# 创建字典
d = {
"a":list(range(1,11)),
"b":list(range(11,21)),
"c":list(range(21,31))
}
# 打印字典中的每一个键值对
#方法一:用for循环的嵌套来遍历字典中的每个键值对。
for i in d:
for n in i:
print(str(n) + ':'+ str(d[n]))
#方法二:用for循环搭配items()方法来遍历字典。
for key,value in d.items():
print(key,":",value)
以上两种遍历字典的方法,最终得到的结果都是一致的,但显然,使用for循环
搭配items()
方法来遍历字典会更简洁和易读。
a : [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
b : [11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
c : [21, 22, 23, 24, 25, 26, 27, 28, 29, 30]
items()
方法的返回值类型
items()
方法返回的是一个字典视图对象,它在Python 3中是一个类似于列表的迭代器。 字典视图对象支持迭代,成员资格测试(成员语法),取长度,和一些其他的基本操作。
字典视图并不会支持像修改元素的值这样的高级操作,因为这些操作会导致字典中的条目数量改变。所以它们是只读的。
以下是字典视图中用到的方法:
方法 | 描述 |
---|---|
items | 返回一个元素为(key , value )对的、包含(key , value )对元组的迭代器。 |
keys | 返回一个包含字典所有键的迭代器。 |
values | 返回一个包含字典所有值的迭代器。 |
__eq__ | 用于判断两个字典视图是否相等。 |
__iter__ | 用于迭代字典视图。 |
__len__ | 用于返回字典视图的长度。 |
总结
items()
方法是Python 3中字典操作的一个非常有用的方法。通过该方法,我们可以获取字典的键值对,并将其转化为一个元素为元组的迭代器或一个列表。 这种方式可以使得遍历字典变得更加容易,提高了字典的可操作性。而字典视图的方法和成员资格测试,则会让我们在使用items()
方法时更加灵活。理解和使用items()
方法将会使我们在Python的开发中更加高效。
声明
本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。