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

pythonserver side programmingprogramming更新于 2025/10/19 20:28:17

当需要限制列表中元素的频率时,可以使用简单的迭代和‘append’方法。

示例

下面是相同的演示 −

from collections import defaultdict

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

print("列表为:")
print(my_list)

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

print("该字典为:")
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("结果为:")
print(my_result)

输出

列表为:
[11, 14, 15, 14, 11, 14, 14, 15, 15, 16]
该字典为:
{14: 3, 11: 1, 16: 1, 15: 2}
结果为:
[11, 14, 15, 14, 14, 15, 16]

解释

  • 将所需的包导入环境。

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

  • 定义一个字典,并显示在控制台上。

  • 定义一个空列表。

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

  • 对原始列表进行迭代,字典元素加 1。

  • 根据原始字典和默认字典中的元素是否大于或否则,使用‘continue’运算符。

  • 然后,使用‘append’方法将元素添加到空列表中。

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


相关文章


有用资源