Python字典,设置和计数器来检查频率是否可以变得相同
当需要检查字典、集合和计数器的频率是否相同时,导入Counter包并将输入转换为“计数器”。字典的值先转换为“集合”,然后再转换为列表。根据输入的长度,输出显示在控制台上。
以下是相同的演示-
示例
from collections import Counter def check_all_same(my_input): my_dict = Counter(my_input) input_2 = list(set(my_dict.values())) if len(input_2)>2: print('The frequencies are not same') elif len (input_2)==2 and input_2[1]-input_2[0]>1: print('The frequencies are not same') else: print('The frequencies are same') my_str = 'xxxyyyzzzzzz' print("字符串是:") print(my_str) check_all_same(my_str)输出结果
字符串是: xxxyyyzzzzzz The frequencies are not same
解释
导入所需的包。
定义了一种将一个输入作为参数的方法。
输入被转换为计数器并分配给变量。
使用“.values”方法访问字典的值,并将其转换为列表。
它再次转换为列表,并分配给变量。
如果输入的长度大于2,则表示频率不匹配。
否则,如果输入的长度为2,并且第二个和第一个索引之间的差值大于1,则表示频率不相同。
否则这意味着频率相同。
在方法之外,定义了一个字符串,通过传递这个字符串来调用方法。
输出显示在控制台上。