簡體   English   中英

我從我的函數返回一個列表,但是當我打印返回的列表時,它打印 NONE

[英]I am returning a list from my function, but when I print that returned list, it prints NONE

def f(N, end):
    if end==-1:
        N=[1]+N
        print (N)
        return (N)

    if N[end]!=9:
        N[end]+=1
        return (N)

    if N[end]==9:
        N[end]=0
        end-=1
        print (N)
        f(N,end)    

L=[9,9,9,9,9]
print(f(L, len(L)-1))

您缺少第二個 if 語句中的 return 子句

  if N[end]!=9:
        N[end]+=1
        return (N)

    if N[end]==9:
        N[end]=0
        end-=1
        print (N)
        return f(N,end) 

通過修復您的代碼,它應該可以工作

你的函數在你的第三個if語句上沒有return語句(這就是為什么打印None ,默認情況下你的函數返回None )它只會改變你的列表NL ),如果你打印你的列表L你會看到結果是[0, 0, 0, 0, 0]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM