0

これは、私が遭遇した問題のタイプの簡単な例です。

def making_list(text):
    list_ = []
    i = 0
    while i < int(len(text)):
        list_.append(text[i])
        i += 1
    return list_

def calling_list(list_):
    print list_

text = raw_input("text input")

making_list(text)
calling_list(list_)

Making_listに由来する変数list_は、関数calling_listによって認識されません。この問題の可能な解決策は何ですか?

ありがとうございました

4

4 に答える 4

3

変数をどこにも保存していません。

mylist = making_list(text)
calling_list(mylist)

説明: 変数名は、関数の有効範囲内でのみ有効です。関数を離れる場合 (いくつかのローカル変数を返す)、変数の名前ではなく、変数の「値」のみを返すため、外部の変数に割り当てる必要があります。

于 2013-04-22T11:46:58.373 に答える
0

の出力を値として受け取る変数を宣言する必要がありmaking_listます。making_list関数が返しますlist_。ただし、関数外の別の変数に割り当てないと到達できません。

list_ = making_list(text)あなたの問題を解決します。

于 2013-04-22T11:49:29.543 に答える