使用 Python 字典、集合和计数器检查频率是否可以相同
当需要检查字典、集合和计数器的频率是否相同时,会导入 Counter 包并将输入转换为“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("The string is :") print(my_str) check_all_same(my_str)
输出
The string is : xxxyyyzzzzzz The frequencies are not same
解释
导入所需的包。
定义一个方法,该方法将一个输入作为参数。
将输入转换为 Counter 并将其赋值给一个变量。
使用“.values”方法访问字典的值,并将其转换为列表。
再次将其转换为列表,并将其赋值给一个变量。
如果输入的长度大于 2,则表示频率不匹配。
否则,如果输入的长度为 2 且第二索引和第一索引之间的差大于 1,则表示频率不相等。
否则表示频率相同。
在方法外部,定义一个字符串,并通过传递此字符串来调用该方法。
输出显示在控制台上。
广告