pandasで連番のcsvを読み込むのを関数化する


[pandasでcsvをまとめて取り込みたい](https://ja.stackoverflow.com/questions/35793/pandas%E3%81%A7csv%E3%82%92%E3%81%BE%E3%81%A8%E3%82%81%E3%81%A6%E5%8F%96%E3%82%8A%E8%BE%BC%E3%81%BF%E3%81%9F%E3%81%84)

[code]

    data=[0]*100
    while(i<100):
        data[i] = pd.read_csv('1 o_%03d.csv'%i)
        i+=1
    
[/code]

を参考に、

[code]

    def mkdf():
        data=[0]*25
        while(i<25):
            data[i] = pd.read_csv('1 o_%03d.csv'%i)
            i+=1
    
[/code]

としたところ、上のように関数を使わずにベタで書くと`print(data[3])`のようにすれば表示できますが、mkdf()を実行したあとprintしても表示されません。  
どのようにしたらベタで書いたものと同様の結果が得られるでしょうか？  
returnとかglobalとか試しましたがどうにもうまくいかないです。

どうぞよろしくお願いいたします。




`data`を`mkdf()`の外(グローバル)に出して、`mkdf()`の中でglobal宣言することと、  
`i`を`while()`の前に 0 で初期化するのが良いのではないでしょうか。

[code]

    data=[0]*25
    
    def mkdf():
        global data
        i=0
        while(i<25):
            data[i] = pd.read_csv('1 o_%03d.csv'%i)
            i+=1
    
[/code]




`data`を`mkdf()`の外(グローバル)に出して、`mkdf()`の中でglobal宣言することと、  
`i`を`while()`の前に 0 で初期化するのが良いのではないでしょうか。

[code]

    data=[0]*25
    
    def mkdf():
        global data
        i=0
        while(i<25):
            data[i] = pd.read_csv('1 o_%03d.csv'%i)
            i+=1
    
[/code]

