Python – 测试行是否具有相似的频率


当需要检查行是否具有相似的频率时,会使用“all”运算符、“Counter”方法和一个简单迭代。

下面是对它的演示 −

示例

 在线演示

from collections import Counter

my_list = [[21, 92, 64, 11, 3], [21, 3, 11, 92, 64], [64, 92, 21, 3, 11]]

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

my_result = all(dict(Counter(row)) == dict(Counter(my_list[0])) for row in my_list )

if(my_result == True):
   print("All rows have similar frequency")
else:
   print("All rows do not have similar frequency")

输出

The list is :
[[21, 92, 64, 11, 3], [21, 3, 11, 92, 64], [64, 92, 21, 3, 11]]
All rows have similar frequency

解释

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

  • 定义了一个包含整数的列表列表,并将其显示在控制台上。

  • 将列表列表中的列表转换为 Counter,然后转换为字典。

  • 检查每个列表中的元素是否以相同频率出现。

  • 如果是,则将一个布尔值存储在一个变量中。

  • 根据此布尔变量,会在控制台上显示相关消息。

更新日期:04-09-2021

114 次浏览

Kickstart Your Career

通过完成课程获得认证

开始
广告