

pythonでCSVファイルを読み込む関数を作ろうとしているのですけれど何故か変なエラーが出ます。これを改善する方法はありませんか？

[code]

    def csv_input(csv):
        data = []
        f = open(csv, 'r')
        reader = csv.reader(f)
        for row in reader:
            data.append(row)
        return data
    
    Traceback (most recent call last):
    File "<stdin>", line 1, in <module>
    File "makes.py", line 70, in input_datas
      data = csv.reader(f)
    AttributeError: 'str' object has no attribute 'reader'
    
[/code]

こんなエラーが出ます。何故出るのかわかりません。


CC BY-SA 3.0
2015-11-10T01:35:31.090
18595
2015-11-10T02:29:44.967
2015-11-10T01:42:08.290
13193
question
python csv
pythonでCSVファイルを読み込む関数がエラーを起こします。


引数の `csv` と `csvモジュール` の名前が衝突してます。

`reader = csv.reader(f)` は「`csv` モジュールの `reader()`」を呼び出しているつもりかもしれませんが「引数
`csv` の `reader()`」を呼び出しているので `'str' object has no attribute 'reader'`
というエラーになります。


CC BY-SA 3.0
2015-11-10T02:29:44.967
18598
2015-11-10T02:29:44.967
5008
18595
answer