今天爱分享给大家带来Python 字典的items()方法和iteritems()方法有什么不同?【面试题详解】,希望能够帮助到大家。
字典是 Python 语言中唯一的映射类型。映射类型对象里哈希键(键,key)和指向的对象(值,value)是多对一的关系,通常被认为是可变的哈希表。字典对象是可变的,它是一个容器类型,能存储任意个数的 Python 对象,其中也可包括其他容器类型。
字典是一种可变容器模型,且可存储任意类型对象。字典的每个键值(key=>value)对用冒号 (? 分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中,格式如下所示:
d= {key1:value1, key2:value2}
键必须是唯一的,但值则不必唯一。值可以取任何数据类型,但键必须是不可变的,例如字符串、数字或元组。
字典的 items 方法可以将所有的字典项以列表方式返回,因为字典是无序的,所以用 items 方法返回字典的所有项,也是无序的。
在 Python 2.x 中,items 会一次性取出所有的值,并以列表返回。iteritems 方法与 items 方法相比作用大致相同,只是它的返回值不是列表,而是一个迭代器,通过迭代取出里面的值,一般在数据量大的时候,iteritems 会比 items 效率高些。
需要注意的是,在 Python 2.x 中,iteritems() 用于返回本身字典列表的迭代器 (Returns an iterator on allitems(key/value pairs)),不占用额外的内存。但是,在Python 3.x中,iteritems() 方法已经被废除了,用 items() 替换 iteritems(),可以用于 for 来循环遍历。在 Python 3.x 中示例:
在 Python 2.x 中运行如下代码: