如何将Python字典转换为列表?
在本文中,我们将向您展示如何将 Python 字典转换为列表。以下是完成此任务的方法
使用 list & items() 方法
使用 keys() 方法
使用 values() 方法
使用列表推导式
使用 zip() 函数
使用 map() 函数
使用 for 循环 & items() 方法
字典是 Python 版本的关联数组数据结构。字典是键值对的集合。每个键值对由一个键和其关联的值表示。
字典由用大括号括起来并用逗号分隔的键值对列表定义。每个键的值用冒号 (:) 分隔。
字典不能仅仅为了获得排序字典的表示而进行排序。根据定义,字典是无序的,而其他类型(如列表和元组)则不是。因此,您需要一种有序的数据类型,即列表——很可能是一个元组列表。
Python 的字典 类为此目的提供了三种方法。方法 items()、keys() 和 values() 分别返回包含键值对元组、仅键和仅值的视图对象。内置的 list 方法将这些视图对象转换为列表对象。
使用 list & items() 方法
Python 的字典类提供了items()函数,该函数返回字典中所有键值对的可迭代序列(字典项)。此返回的序列表示字典中实际的键值对。我们可以使用list() 函数从这个可迭代序列中获取一个元组列表。
算法(步骤)
以下是执行所需任务的算法/步骤:
创建一个变量来存储输入字典。
使用items()函数获取字典的所有键值对(返回字典中键值对的组),并使用list()函数(返回可迭代对象的列表)将字典项(键值对)转换为元组列表。
打印转换后字典的最终列表。
示例
以下程序使用 list & items() 方法将 Python 字典转换为列表:
# input dictionary inputDictionary = {'Hello': 10, 'Tutorialspoint': 20, 'python': 30} # converting input dictionary items(key-value pair) # to a list of tuples resultList = list(inputDictionary.items()) # printing the resultant list of a dictionary print(resultList)
输出
执行上述程序后,将生成以下输出:
[('Hello', 10), ('Tutorialspoint', 20), ('python', 30)]
使用 keys() 方法
算法(步骤)
以下是执行所需任务的算法/步骤:
创建一个变量来存储输入字典。
通过将其应用于输入字典并使用list()函数(将序列/可迭代对象转换为列表)将结果转换为列表,使用keys()函数(dict.keys()方法提供一个视图对象,按插入顺序显示字典中所有键的列表)打印字典所有键的列表。
示例
以下程序使用 list() 和 keys() 函数返回字典所有键的列表:
# input dictionary inputDictionary = {'Hello': 10, 'Tutorialspoint': 20, 'python': 30} # converting input dictionary keys to a list resultList = list(inputDictionary.keys()) # printing the resultant list of a dictionary keys print(resultList)
输出
执行上述程序后,将生成以下输出:
['Hello', 'Tutorialspoint', 'python']
使用 values() 方法
要获取值列表,请使用字典的values()方法。我们可以使用list()函数将值转换为列表。
示例
以下程序使用 list() 和 values() 函数返回字典所有值的列表:
# input dictionary inputDictionary = {'Hello': 10, 'Tutorialspoint': 20, 'python': 30} # converting input dictionary values to a list resultList = list(inputDictionary.values()) # printing the resultant list of a dictionary values print(resultList)
输出
执行上述程序后,将生成以下输出:
[10, 20, 30]
使用列表推导式
列表推导式使在 Python 中创建列表变得简单。此外,您可以在同一行更改元素的值。
使用dictionary.items()在将它们添加到列表之前检索项的键和值。
示例
以下程序使用列表推导式将 Python 字典转换为列表:
# input dictionary inputDictionary = {'Hello': 10, 'Tutorialspoint': 20, 'python': 30} # Storing key and value as list of tuples using list comprehension resultList = [(key, value) for key, value in inputDictionary.items()] # printing the resultant list of a dictionary key-values print(resultList)
输出
执行上述程序后,将生成以下输出:
[('Hello', 10), ('Tutorialspoint', 20), ('python', 30)]
使用 zip() 函数
zip()函数可用于组合两个列表/迭代器。通过这种方式,我们可以组合字典的 .keys() 和 .values() 方法,以便同时访问这两个值。
示例
以下程序使用 list zip() 函数将 Python 字典转换为列表:
# input dictionary inputDictionary = {'Hello': 10, 'Tutorialspoint': 20, 'python': 30} #combining keys and values of dictionary using zip() function resultList = zip(inputDictionary.keys(), inputDictionary.values()) # converting zip object to list resultList = list(resultList) # printing the resultant list of a dictionary key-values print(resultList)
输出
执行上述程序后,将生成以下输出:
[('Hello', 10), ('Tutorialspoint', 20), ('python', 30)]
使用 map() 函数
map()是一个内置函数,允许您将任何函数映射到迭代器/列表上。要创建列表的列表,请将 list() 函数映射到dictionary.items()的所有元素上。
示例
以下程序使用 list map() 函数将 Python 字典转换为列表:
# input dictionary inputDictionary = {'Hello': 10, 'Tutorialspoint': 20, 'python': 30} # conveting list of keys and values of dictionary to a list using map() function resultList = new_list = list(map(list, inputDictionary.items())) # printing the resultant list of a dictionary key-values print(resultList)
输出
执行上述程序后,将生成以下输出:
[['Hello', 10], ['Tutorialspoint', 20], ['python', 30]]
使用 for 循环 & items() 方法
算法(步骤)
以下是执行所需任务的算法/步骤:
创建一个变量来存储输入字典。
创建一个空列表,该列表提供字典键、值的最终列表。
使用for循环使用items()函数(返回字典中键值对的组)遍历字典的每个键值对。
使用append()函数(在末尾将元素添加到列表)将相应的键值对列表追加到列表。
打印字典键值对的最终列表
示例
以下程序使用 for 循环、append()、items() 函数将 Python 字典转换为列表:
# input dictionary inputDictionary = {'Hello': 10, 'Tutorialspoint': 20, 'python': 30} # creating an empty list resultList = [] # traversing through each key value pair of a dictionary using items() function for key, val in inputDictionary.items(): # appending list of corresponding key-value pair to a list resultList.append([key, val]) # printing the resultant list of a dictionary key-values print(resultList)
输出
执行上述程序后,将生成以下输出:
[['Hello', 10], ['Tutorialspoint', 20], ['python', 30]]
结论
在本文中,我们学习了如何使用七种不同的方法将给定的字典转换为列表。我们还学习了如何使用 items() 函数遍历字典。