Python – 限制列表中元素的频率


当需要限制列表中的元素频率时,会使用简单的迭代以及“追加”方法。

范例

以下是该方法的展示:

from collections import defaultdict

my_list = [11, 14, 15,14, 11, 14, 14, 15, 15, 16]

print("The list is :")
print(my_list)

my_dict = {14 : 3, 11 : 1, 16 : 1, 15 : 2}

print("The dictionary is :")
print(my_dict)

my_result = []
my_def_dict = defaultdict(int)
for element in my_list:
   my_def_dict[element] += 1

   if my_def_dict[element] > my_dict[element]:
      continue
   else:
      my_result.append(element)

print("The result is :")
print(my_result)

输出

The list is :
[11, 14, 15, 14, 11, 14, 14, 15, 15, 16]
The restrict dictionary is :
{14: 3, 11: 1, 16: 1, 15: 2}
The result is :
[11, 14, 15, 14, 14, 15, 16]

说明

  • 所需软件包已导入到环境中。

  • 定义了一个整数列表并显示在控制台中。

  • 定义了一个词典并显示在控制台中。

  • 定义了一个空列表。

  • 定义了一个整数的默认字典。

  • 迭代原始列表,并使词典元素增加 1。

  • 根据原始词典和默认词典中的元素是否大于或等于 0,使用“继续”操作符。

  • 然后,使用“追加”方法将元素添加到空列表中。

  • 这是显示在控制台上的输出。

更新时间:2021 年 9 月 8 日

293 查看次数

开启您的 职业生涯

通过完成课程获得认证

开始
广告