如何将Python字典转换为列表?

如何将Python字典转换为列表?

在本文中,我们将展示如何将Python字典转换为列表。以下是完成此任务的方法:

  • 使用list()和items()方法

  • 使用keys()方法

  • 使用values()方法

  • 使用列表推导

  • 使用Zip()函数

  • 使用map()函数

  • 使用for循环和items()方法

Dictionaries(字典) 是Python中的一种关联数组数据结构。字典是一组键值对。每个键对由键对和其关联的值表示。

字典由用花括号括起来并用逗号分隔的 键值对 列表定义。每个键的值由 冒号(:) 分隔。

不能仅出于获取排序的表示而对字典进行排序。字典根据定义无序,而其他类型(例如列表和元组)不是。因此,您需要一个有序的数据类型,这很可能是元组的列表。

Python的字典类有三种为此目的的方法。方法 items()、keys()、values() 返回视图对象,包含键值对、仅键和仅值的元组。内置的list()方法将这些视图对象转换为列表对象。

使用list()和items()方法

Python的字典类提供了 items()函数 它返回字典中所有键值对(dict items)的可迭代序列。返回的序列代表字典中的实际键值对。我们可以使用list()函数从此可迭代序列获取元组的列表。

算法(步骤)

执行所需任务的算法/步骤如下所示−

  • 创建一个变量以存储输入字典。

  • 使用 **items() > ** 函数获取字典的所有键值对(返回字典中键值对的一组),并使用list()函数(返回可迭代的列表)将字典项(键值对)转换为元组的列表。

  • 打印转换后的字典列表的结果。

示例

以下程序使用list()和items()方法将Python字典转换为列表−

#输入字典
inputDictionary = {'Hello':10,'Tutorialspoint':20,'python':30}
#将输入字典项(键值对)转换为元组的列表
resultList =list(inputDictionary.items())
#打印转换后的字典列表的结果。
print(resultList)
Python

输出 执行以上程序后,将生成以下输出−

[('Hello', 10), ('Tutorialspoint', 20), ('python', 30)]
Python

使用keys()方法

算法(步骤)

执行所需任务的算法/步骤如下所示−

  • 创建一个变量以存储输入的字典。

  • 使用 keys() 函数打印字典所有键的列表(字典的keys()方法提供了一个视图对象,按插入顺序显示字典中所有键的列表),将其应用于输入字典并使用 list() 函数将结果转换为列表(将序列/可迭代对象转换为列表)。

示例

以下程序使用list()和keys()函数返回字典的所有键列表-

#输入的字典
inputDictionary={'Hello':10, 'Tutorialspoint':20, 'python':30}
#将输入字典键转换为列表
resultList=list(inputDictionary.keys())
#打印字典键的结果列表
print(resultList)
Python

输出

执行上述程序将生成以下输出-

['Hello''Tutorialspoint''python']
Python

使用values()方法

要获取值列表,请使用字典的 values() 方法。我们可以使用 list() 函数将值转换为列表。

示例

以下程序使用list()和values()函数返回字典的所有值列表-

#输入的字典
inputDictionary={'Hello':10, 'Tutorialspoint':20, 'python':30}
#将输入字典值转换为列表
resultList=list(inputDictionary.values())
#打印字典值的结果列表
print(resultList)
Python

输出

执行上述程序将生成以下输出-

[102030]
Python

使用列表推导式

在Python中,使用列表推导式很容易创建列表。此外,您可以在同一行上更改元素的值。

使用 dictionary.items() 检索项目的键和值,然后将其添加到列表中。

示例

以下程序使用列表推导式将Python字典转换为列表-

#输入的字典
inputDictionary={'Hello':10, 'Tutorialspoint':20, 'python':30}
#使用列表推导式将密钥和值存储为元组列表
resultList=[(key, value)for key, valuein inputDictionary.items()]
#打印字典键值的结果列表
print(resultList)
Python

输出

执行上述程序将生成以下输出-

[('Hello', 10), ('Tutorialspoint', 20), ('python', 30)]
Python
[('Hello', 10), ('Tutorialspoint', 20), ('python', 30)]
Python

使用zip()函数

可以使用 zip() 函数来组合两个列表/迭代器。通过这种方式,我们可以结合字典的.keys()和.values()方法来同时访问两个值。

示例

以下程序使用列表zip()函数将Python字典转换为列表-

# 输入字典
inputDictionary={'Hello':10,'Tutorialspoint':20,'python':30}
# 使用zip()函数结合字典的键和值
resultList=zip(inputDictionary.keys(), inputDictionary.values())
# 将zip对象转换为列表
resultList=list(resultList)
# 打印字典键值的结果列表
print(resultList)
Python

输出

执行以上程序将生成以下输出-

[('Hello', 10), ('Tutorialspoint', 20), ('python', 30)]
Python

使用map()函数

map() 是一个内置函数,允许您在迭代器/列表上映射任何函数。 dictionary.items() 可以创建列表的列表。

示例

以下程序使用列表map()函数将Python字典转换为列表-

# 输入字典
inputDictionary={'Hello':10,'Tutorialspoint':20,'python':30}
# 将字典键和值的列表转换为列表使用map()函数
resultList=new_list=list(map(list, inputDictionary.items()))
# 打印字典键值的结果列表
print(resultList)
Python

输出

执行以上程序将生成以下输出-

[['Hello', 10], ['Tutorialspoint', 20], ['python', 30]]
Python

使用for循环和items()方法

算法(步骤)

以下是要执行所需任务的算法/步骤-

  • 创建一个变量以存储输入字典。

  • 创建一个空列表,以给出字典键,值的结果列表。

  • 使用 for 循环遍历字典的每个键值对,使用 items() 函数(返回一个字典中的键值对组)。

  • 使用 append() 函数(在列表末尾添加元素)将对应的键值对列表附加到列表中。

  • 打印字典键值的结果列表

示例

以下程序使用for循环,append()和items()函数将Python字典转换为列表-

# 输入字典
inputDictionary = {'Hello': 10, 'Tutorialspoint': 20, 'python': 30}
# 创建一个为空的列表
resultList = []
# 使用items()函数遍历字典的每个键值对
for key, val in inputDictionary.items():
   # 将对应的键值对列表附加到列表中
   resultList.append([key, val])
# 打印字典键值的结果列表
print(resultList)
Python

输出

执行上述程序后,将会生成以下输出 −

[['Hello', 10], ['Tutorialspoint', 20], ['python', 30]]
Python

总结

在本文中,我们学习了使用七种不同的方法将给定的字典转换为列表。我们还学习了如何使用items()函数遍历字典。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

登录

注册