Python程式:獲取構建字串的最小元素


當需要獲取構建字串的最小元素時,需要用到集合運算子、組合方法、issubset方法和簡單的迭代。

示例

以下是該方法的演示

from itertools import combinations

my_list = ["python", "is", "fun", "to", "learn"]

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

my_target_str = "onis"

my_result = -1
my_set_string = set(my_target_str)
complete_val = False
for value in range(0, len(my_list) + 1):

   for sub in combinations(my_list, value):

      temp_set = set(ele for subl in sub for ele in subl)

      if my_set_string.issubset(temp_set):
         my_result = value
         complete_val = True
         break
   if complete_val:
      break

print("The result is :")
print(my_result)

輸出

The list is :
['python', 'is', 'fun', 'to', 'learn']
The result is :
2

解釋

  • 將所需的包匯入環境。

  • 定義一個列表並在控制檯顯示。

  • 定義另一個字串。

  • 將字串轉換為列表。

  • 迭代列表,並獲得列表中元素的不同組合。

  • 迭代列表並將其轉換為集合。

  • 使用'issubset'方法檢查某個值是否屬於該集合。

  • 如果是,則將變數賦值為'True',並跳出迴圈。

  • 如果最終該值為'True',則在控制檯顯示結果。

更新於:2021年9月14日

90次瀏覽

開啟您的職業生涯

完成課程獲得認證

開始學習
廣告