使用 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,則表示頻率不相等。

  • 否則表示頻率相同。

  • 在方法外部,定義一個字串,並透過傳遞此字串來呼叫該方法。

  • 輸出顯示在控制檯上。

更新於: 2021-04-17

261 次檢視

開啟您的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.