计算 Python 中一个列表中字典值中的项数

pythonserver side programmingprogramming更新于 2026/1/22 10:20:17

我们得到一个字典,其中键值对的值本身就是一个列表。在本文中,我们将了解如何计算此列表中作为字典值出现的项数。

使用 isinstance

假设我们使用 isinstance 函数来确定字典的值是否为列表。然后,每当 isinstance 返回 true 时,我们就增加一个计数变量。

示例

# 定义字典
Adict = {'Days': ["Mon","Tue","wed","Thu"],
   'time': "2 pm",
   'Subjects':["Phy","Chem","Maths","Bio"]
   }
print("给定字典:\n",Adict)
count = 0
# 使用 isinstance
for x in Adict:
   if isinstance(Adict[x], list):
      count += len(Adict[x])
print("列表中元素的数量:\n",count)

输出

运行上述代码得到以下结果 −

给定字典:
{'Days': ['Mon', 'Tue', 'wed', 'Thu'], 'time': '2 pm', 'Subjects': ['Phy', 'Chem', 'Maths', 'Bio']}
列表中元素的数量:
8

使用 items()

使用 items() 我们循环遍历字典中的每个元素并应用 isinstance 函数来确定它是否是列表。

示例

# 定义字典
Adict = {'Days': ["Mon","Tue","wed","Thu"],
   'time': "2 pm",
   'Subjects':["Phy","Chem","Maths","Bio"]
   }
print("Given dictionary:\n",Adict)
count = 0
# 使用 .items()
for key, value in Adict.items():
   if isinstance(value, list):
      count += len(value)
print("列表中元素的数量:\n",count)

输出

运行上述代码得到以下结果 −

给定字典:
{'Days': ['Mon', 'Tue', 'wed', 'Thu'], 'time': '2 pm', 'Subjects': ['Phy', 'Chem', 'Maths', 'Bio']}
列表中元素的数量:
8

使用 enumerate

enumerate 函数还会扩展并列出字典的项目。我们应用这个实例来找出列表中的值。

示例

# 定义字典
Adict = {'Days': ["Mon","Tue","wed","Thu"],
   'time': "2 pm",
   'Subjects':["Phy","Chem","Maths","Bio"]
   }
print("Given dictionary:\n",Adict)
count = 0
for x in enumerate(Adict.items()):
   if isinstance(x[1][1], list):
      count += len(x[1][1])
print(count)
print("列表中元素的数量:\n",count)

输出

运行上述代码得到以下结果 −

给定字典:
{'Days': ['Mon', 'Tue', 'wed', 'Thu'], 'time': '2 pm', 'Subjects': ['Phy', 'Chem', 'Maths', 'Bio']}
8
列表中元素的数量:
8

相关文章


有用资源