Python 如何将字典和列表压缩在一起

Python 如何将字典和列表压缩在一起

在本文中,我们将展示如何将Python字典和列表压缩在一起。以下是完成此任务的各种方法:

  • 使用zip()函数

  • 使用append()函数和items()函数

  • 使用append()函数和in操作符

使用zip()函数将字典和列表组合在一起

步骤

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

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

  • 创建另一个变量来存储输入的列表。

  • 使用zip()函数(zip()函数可用于合并两个列表/迭代器)将输入的字典和列表通过将字典的键值对使用items()函数(返回字典的键值对)作为参数以及输入的列表传递给它。

  • 这里返回的结果是给定字典和输入列表的zip对象。

  • 通过使用list()函数(返回可迭代对象的列表)将上述zip对象转换为列表,打印出结果的zip结果。

示例

以下程序使用zip()函数将输入的字典和列表组合在一起:

# input dictionary
inputDict = {'Hello':1, 'tutorialspoint':2, 'python':3, 'codes':3}

# input list
inputList = [10, 20, 30, 40]

# combining input dictionary and list together
zippedResult = zip(inputDict.items(), inputList)

print("Combining input dictionary and list together:")
# printing the resultant zip result by converting the
# above zip object into a list
print(list(zippedResult))

输出

在执行上述程序时,将会生成以下输出结果 −

Combining input dictionary and list together:
[(('Hello', 1), 10), (('tutorialspoint', 2), 20), (('python', 3), 30), (('codes', 3), 40)]

创建Zip对象并访问它

步骤

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

  • 使用 for循环 遍历输入字典的键值对和上述Zip对象中的列表项

  • 打印字典的对应键。

  • 打印字典的对应值。

  • 打印输入列表的对应列表项。

示例

以下程序使用 zip() 函数将输入字典和列表组合在一起,并打印Zip对象的键、字典的值和列表项−

# input dictionary
inputDict = {'Hello':1, 'tutorialspoint':2, 'python':3, 'codes':3}

# input list
inputList = [10, 20, 30, 40]

# combining input dictionary and list together
zippedObject = zip(inputDict.items(), inputList)
print("Zipping input dictionary and list:")

# traversing through key, value pair of dictionary and list items in
# the above zip object
for (k, v), listItem in zippedObject:

   # printing the corresponding key of a dictionary
   print(k)

   # printing the corresponding value of a dictionary
   print(v)

   # printing corresponding list item of the input list
   print(listItem)

输出

执行上面的程序将生成以下输出 –

Zipping input dictionary and list:
Hello
1
10
tutorialspoint
2
20
python
3
30
codes
3
40

使用append()和items()函数

步骤

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

  • 创建一个空列表来存储给定字典和列表的zip对象。

  • 获取列表的索引值,并将其初始化为0。

  • 使用items()函数遍历字典的键-值对。

  • 创建一个包含字典的键和值的元组,并将其存储在一个变量中。

  • 使用append()函数将上述元组和列表当前索引的元素作为元组追加到列表中。

  • 增加列表索引的值1。

  • 打印字典和列表的zip对象。

示例

以下程序使用append()和items()函数将输入的字典和列表组合在一起。

# input dictionary
inputDict = {'Hello':1, 'tutorialspoint':2, 'python':3, 'codes':3}

# input list
inputList = [10, 20, 30, 40]

# empty list for storing result
result = []

# initializing a variable of list index with 0
i=0

# traversing through key, value pair of input dictionary
for key,value in inputDict.items():

   # creating a tuple of key-value pairs of a dictionary
   dict_key_value_tuple = (key,value)

   # appending corresponding key, value pair of input dictionary, and input list element to the above result list
   result.append(((dict_key_value_tuple),inputList[i]))

   # incrementing the value of the list index by 1
   i+=1

# printing the resultant zip of input dictionary and list
print("Zipping input dictionary and list:\n", result)

输出

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

Zipping input dictionary and list:
[(('Hello', 1), 10), (('tutorialspoint', 2), 20), (('python', 3), 30), (('codes', 3), 40)]

使用 append() 函数和 in 操作符

示例

以下程序使用 append() 函数和 in 操作符将输入的字典和列表组合在一起 −

# input dictionary
inputDict = {'Hello':1, 'tutorialspoint':2, 'python':3, 'codes':3}

# input list
inputList = [10, 20, 30, 40]

# empty list for storing result
result = []

# initializing a variable of list index with 0
i=0

# traversing through key of input dictionary
for key in inputDict:

   # creating a tuple of key-value pair of a dictionary
   # here inputDict[key] represents value of a dictionary
   dict_key_value_tuple = (key,inputDict[key])

   # appending corresponding key, value pair of input dictionary,
   # input list element as tuple to the above result list
   result.append(((dict_key_value_tuple),inputList[i]))

   # incrementing the value of the list index by 1
   i+=1

# printing the resultant zip of input dictionary and list
print("Zipping input dictionary and list:\n", result)

输出

在执行时,上面的程序将生成以下输出 −

Zipping input dictionary and list:
[(('Hello', 1), 10), (('tutorialspoint', 2), 20), (('python', 3), 30), (('codes', 3), 40)]

结论

在这篇文章中,我们学习了Python中压缩给定字典或列表的三种技术。我们学会了如何访问zip对象并显示其值。我们还学会了如何使用items()函数和in运算符遍历字典。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程