3

入力リスト(ネストされたリストを含む)を予約するだけの簡単なプロシージャをコーディングしようとしています。

手順自体-

def is_list(p):
    return isinstance(p, list)

def deep_reverse(input):
    result = []
    if len(input) == 0:
        return []
    for element in input:
        if is_list(element) == True:
            deep_reverse(element)
        else:
            appended = input.pop
            result.append(appended)
            print result
    return result

手順を実行するために入力しているもの-

p = [1, [2, 3, [4, [5, 6]]]]
print deep_reverse(p)
print p

結果 -

[built-in method pop of list object at 0xb752b0cc]
[built-in method pop of list object at 0xb7529c6c]
[built-in method pop of list object at 0xb7529cec]
[built-in method pop of list object at 0xb7529ecc]
[built-in method pop of list object at 0xb7529ecc]
[1, [2, 3, [4, [5, 6]]]]

私は何が間違っているのですか?

4

1 に答える 1

9

.pop方法です。あなたはそれを呼び出す必要があります:

appended = input.pop()

これにより、から最後の要素が取得されinputます。最初の要素を取りたい場合は、引数を与えます。

appended = input.pop(0)
于 2012-08-31T11:25:28.913 に答える