0

リストを作成する関数を実行しようとしています。

唯一の問題は、再帰関数であるため、使用している新しいリストを定義する list=[]と、実行するたびにリストが空になり、実行しないと、新しいリストは定義されていないと言われます。

コード例:

def rec (a_list_of_numbers):

    if a_list_of_numbers==[]:
        return 0
    newlist=[] ##the problem is here
    newlist.append(rec(**some sort of recursion here**)+rec(**some sort of recursion here**)
    return newlist
4

1 に答える 1

1

コードを見なくても、本当に必要newlistですか?

def rec(a_list_of_numbers):
    if a_list_of_numbers == []:
        return []
    else:
        return rec(...) + rec(...)

あなたの再帰は疑わしいようです - 基本ケースは空のリストであり、それらを連結するだけです。

于 2012-11-17T12:13:04.780 に答える