Python 関数からリストを返す 質問する

Python 関数からリストを返す 質問する

ファイルをリストに解析する関数があります。他の関数で使用できるように、そのリストを返そうとしています。

def splitNet():
    network = []
    for line in open("/home/tom/Dropbox/CN/Python/CW2/network.txt","r").readlines():
        line = line.replace("\r\n", "")
        line = string.split(line, ',')
        line = map(int, line)
        network.append(line)
    return network

関数の外部でリストを印刷しようとすると (デバッグのため)、次のエラーが発生します。

NameError: name 'network' is not defined

何か単純な間違いをしているのでしょうか、それともグローバルを使用せずに関数間で変数を渡すより良い方法があるのでしょうか?

ベストアンサー1

変数は、それが定義された関数のスコープ外からはアクセスできません。

次のようにするだけです:

network = splitNet()
print network

おすすめ記事