Python 如何通过使用字典替换字符串中的字符来查找字符串的可能组合?

Python 如何通过使用字典替换字符串中的字符来查找字符串的可能组合?,python,Python,我试图找到字符串的所有可能组合,同时使用字典替换字符串中的一些字符。我必须在不导入任何模块的情况下实现这一目标。以下是一个例子: myDict = {'R':'AG', 'Y':'CT', 'M':'CA', 'G':'G', 'D':'ATG', 'A':'A'} myString = "ARD" 所以我想用上面的字典写出myString的所有可能组合,应该是“AAA”,“AAT”,“AAG”,“AGA”,“AGT”,“AGG” 我不知道如何迭代字符串中的每个字符,然后将它们放入列表或其他

我试图找到字符串的所有可能组合,同时使用字典替换字符串中的一些字符。我必须在不导入任何模块的情况下实现这一目标。以下是一个例子:

myDict = {'R':'AG', 'Y':'CT', 'M':'CA', 'G':'G', 'D':'ATG', 'A':'A'}

myString = "ARD"
所以我想用上面的字典写出myString的所有可能组合,应该是
“AAA”,“AAT”,“AAG”,“AGA”,“AGT”,“AGG”


我不知道如何迭代字符串中的每个字符,然后将它们放入列表或其他什么东西中

IMO OP的描述有点模糊,但足够清楚

这听起来像是一个测试递归技巧的简单面试问题。查看答案(假设myDict的值没有重复)

屏幕输出:

['AAA', 'AAT', 'AAG', 'AGA', 'AGT', 'AGG']

感谢@stanleyli读了这篇文章

>>> map(''.join, itertools.product(*map(myDict.get, myString)))
['AAA', 'AAT', 'AAG', 'AGA', 'AGT', 'AGG']

请编辑您的帖子,说明如何将
ARD
转换为这六条字符串中的每一条(myString),然后您可以使用itertools.compositions,欢迎使用StackOverflow。请阅读并遵循帮助文档中的发布指南。适用于这里。在您发布代码并准确描述问题之前,我们无法有效地帮助您。哇,您解密了OP:-)。不过,您的
recus
应该是
recr
。太棒了!非常感谢你的回答!我今天要试试这个!
>>> map(''.join, itertools.product(*map(myDict.get, myString)))
['AAA', 'AAT', 'AAG', 'AGA', 'AGT', 'AGG']