我需要遞回方面的幫助 我這里有一個代碼,可以將整數轉換為字串串列。但是,我正在努力使其遞回。這是我到目前為止所擁有的。
def turnList( a ):
b = str(a)
c = []
for digit in b:
c.append(digit)
return c
uj5u.com熱心網友回復:
對于遞回函式,您需要一個基本案例,即當我們完成并且不再需要遞回和通用遞回案例時
def turnList(a):
a=str(a)
if len(a)==1:
return [a]
else:
return [a[0]] turnList(a[1:])
我們的基本情況是當我們的遞回函式得到一個長度為 1 的字串時。并且我們的遞回案例將其輸入中的第一個值作為字串(在串列中)與所有“未來”遞回字串的串列相結合。
uj5u.com熱心網友回復:
從基本情況開始,在這種情況下為零的空串列,然后定義遞回行為。
def turnList(a):
if a == 0: # base case
return []
a,d = divmod(a,10) # strip off last digit
return turnList(a) [str(d)] # recurse
print(turnList(123))
輸出:
['1', '2', '3']
uj5u.com熱心網友回復:
有多種方法可以進行遞回。在這里,我們調整bIndex.
b = "hello"
def turnList(c, bIndex):
if len(b) == bIndex:
return c
return turnList(c [b[bIndex]],bIndex 1)
print(turnList([],0))
uj5u.com熱心網友回復:
global an
an = []
def turnList(a):
global an
b=str(a)
an.append(b[len(b)-1])
try:
return turnList(int(b[:len(b)-1]))
except ValueError as e:
an.reverse()
return an
m = turnList(10)
print(m)
這可能是我寫過的最好的
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/460988.html
上一篇:Vagrant詳細教程
下一篇:遞回地將目錄和檔案復制到目標
