- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我有一个列表,其中包含几个列表,其中包含给定句子中的很多单词(字谜)。
anagrams_list = [['artist', 'strait', 'traits'], ['are', 'ear', 'era'], ['detail', 'dilate', 'tailed']]
我想创建一个列表,其中包含我可以用这些词创建的每个句子。
这里是:
result = ['artist are detail', 'artist are dilate', 'artist are tailed', 'artist ear detail', ...]
我尝试了很多 for 但取决于我在 anagrams_list 中有多少列表这是不可能的,我想递归会很好但我不知道如何创建它。
最佳答案
您可以使用 itertools.product
为此,通过将元组连接成一个句子来进行后期处理:
import itertools
result = [' '.join(x) for x in itertools.product(*anagrams_list)]
这会创建:
>>> result
['artist are detail', 'artist are dilate', 'artist are tailed', 'artist ear detail', 'artist ear dilate', 'artist ear tailed', 'artist era detail', 'artist era dilate', 'artist era tailed', 'strait are detail', 'strait are dilate', 'strait are tailed', 'strait ear detail', 'strait ear dilate', 'strait ear tailed', 'strait era detail', 'strait era dilate', 'strait era tailed', 'traits are detail', 'traits are dilate', 'traits are tailed', 'traits ear detail', 'traits ear dilate', 'traits ear tailed', 'traits era detail', 'traits era dilate', 'traits era tailed']
关于用于字谜的 Python 列表操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42250264/
我的程序运行良好,这只是我需要的一个小建议;首先这是我的代码,用于检查两个单词是否是字谜;效果很好; #include int anagram_check(char [], char []); in
面试问题给定两个输入字符串,您只能交换字符串中的两个连续元素。您必须展示将一个字符串转换为另一个字符串的所有步骤(两个字符串将是彼此的字谜)。例如。口香糖到马克杯 古姆百货公司通用汽车大学微量气体发生
我正在尝试学习 Python。考虑这个简单的 C 语言变位词检查器: bool are_anagrams(const char* str1, const char* str2) { int str
(下面关于我的问题的代码) 根据 this stack overflow question我使用 Pegolon 的方法来生成 NSString 中一组字符的所有可能排列。但是,我现在试图让它不仅生成
testing if strings are anagrams有很多种方式.但是,我想知道是否有一种方法可以只对每个单词进行一次迭代?如果不是,在 Python 中最有效的方法是什么? 我们可以遍历第
我是一名优秀的程序员,十分优秀!