2015-10-17 49 views
-1

我必須編寫一個遞歸函數,該函數需要兩個字符串並給出單個字符串的輸出。輸出中的替代字符串

def alternate("aceg","bdf") -> 'abcedfg' 

現在我寫的代碼是

def alternate(x, y): 
    n = 0 
    while (n > len("x" or "y"):  
     result = x[n] + y[n] 
     n = n + 1  
     return result 

,但只給出了前兩個字母"ab"我已經嘗試了各種方法,但我似乎無法得到正確的答案,並在頂部我還必須使用遞歸!如果任何人都可以用代碼來幫助我,我會非常感激。

+1

你的代碼是錯誤的。它有一個語法錯誤,甚至不會編譯(參見'while'的條件)。請糾正它並正確縮進它。另外:'「x」或「y」==「x」'。 – Bakuriu

+0

我假設輸出應該是'abcdefg',而不是'abcedfg'? –

+3

不要污衊你的問題。 – vaultah

回答

4

一種可能性:

def alternate(x, y): 
    return x[0] + alternate(y, x[1:]) if x else y