Python程序获取用于字符串构建的最小元素
需要获取用于构建字符串的最小元素时,需要使用“set”运算符、“combinations”方法、“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”,则在控制台上显示结果。