[使用python,我希望打印列表中的所有单词,这些单词完全由单独列表中的较小单词组成。例如;
list1 =('ABCDEFGHI','DEFABCGHI','ABCABCGHIABC','AACFFFGHI')
list2 =('ABC','DEF','GHI')
从这两个列表中,我试图将最终输出打印出来;(“ ABCDEFGHI”,“ DEFABCGHI”,“ ABCABCGHIABC”,)由于列表1中的这些字符串完全由列表2中的较短字符串组成。但是,不应打印字符串“ AACFFFGHI”,因为它不是由这些较短字符串的组合组成的。
因此,尝试澄清一下,我正在从list1中寻找的字符串;
我已经为此苦苦挣扎了几天,可以在列表中搜索由单个字符组成的字符串,但是我在努力寻找由字符序列组成的字符串。任何帮助将非常感激。马库斯。
我能想到的最简单的方法是,获得permutations
中所有的字符串permutations
。这是您可以继续的方法:
list2
中的字符串获取所有排列list2
他们成一个字符串join
set
取set.intersection
list1