返回递归函数python中的字符串列表

时间:2015-11-16 00:05:22

标签: python string recursion

我试图从函数组(s,k)返回一个字符串列表,其中基本上是&#39; k&#39;的字符串列表。来自字符串&#39;的元素k> = 0且k <= len(s)并且这些字符串中的这些元素以与&#39; s&#39;相同的顺序出现。如下图所示

小组(&#34; abcde&#34;,2)→[&#34; ab&#34;,&#34; ac&#34;,&#34; ad&#34;,&#34; ae& #34;&#34; BC&#34;&#34; BD&#34;&#34;是&#34;&#34; CD&#34;&#34; CE&#34; de&#34;]

小组(&#34; abcde&#34;,5)→[&#34; abcde&#34;]
小组(&#34; abcde&#34;,1)→[&#34; a&#34;,&#34; b&#34;,&#34; c&#34;,&#34; d&#34; ,&#34; e&#34;]

我对这个问题的措辞感到非常抱歉,因为它很难理解,但到目前为止我还有:

    def Groups(s,k):
        if k == 0 or k > len(s):
            return [""]

        return [ i*k for i in s if k ==1]
        if k > 1 and k <= 5:
            return[ x for y in s y for x in s]

我非常感谢任何帮助:)

1 个答案:

答案 0 :(得分:3)

我认为combinations是您要找的词:

list(''.join(letters) for letters in combinations("abcde", 2))
# returns ['ab', 'ac', 'ad', 'ae', 'bc', 'bd', 'be', 'cd', 'ce', 'de']