Python开放式CSV
我想在文件夹中打开一个名为x的csv,文件名为“blah.csv”Python开放式CSV,python,csv,Python,Csv,我想在文件夹中打开一个名为x的csv,文件名为“blah.csv” import csv def amread(x): with open('x', newline='') as f: reader = csv.reader(f) for row in reader: print(row) return; amread()返回名称blah.csv未定义 由于缺乏明确性,以下是交互窗格中未经编辑的完整报价:
import csv
def amread(x):
with open('x', newline='') as f:
reader = csv.reader(f)
for row in reader:
print(row)
return;
amread()返回名称blah.csv未定义
由于缺乏明确性,以下是交互窗格中未经编辑的完整报价:
>>> import csv
>>> def amread(x):
... with open('x', newline='') as f:
... reader = csv.reader(f)
... for row in reader:
... print(row)
... return;
...
>>> amread(blah.csv)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'blah' is not defined
导入csv
>>>def amread(x):
... 以open('x',换行符='')作为f:
... 读卡器=csv。读卡器(f)
... 对于读取器中的行:
... 打印(行)
... 返回;
...
>>>amread(blah.csv)
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
名称错误:未定义名称“blah”
这将在python名称空间blah.csv
中查找名称。您没有使用此名称的变量或参数,这会导致错误“name blah.csv未定义”
假设您想要打开一个实际名为blah.csv的文件,您可以将该名称作为字符串传递:
>>> amread('blah.csv')
戴夫·科斯塔的回答是正确的: amread(blah.csv) 这将在python名称空间blah.csv中查找名称。您没有使用此名称的变量或参数,这会导致错误“name blah.csv未定义” 假设您想要打开一个实际名为blah.csv的文件,您可以将该名称作为字符串传递:
>>> amread('blah.csv')
amread('blah.csv')
熊猫在这方面非常擅长,我通常使用read_csv
需要
导入csv
?可以发布堆栈跟踪吗?这是完整的密码吗?Python的变量区分大小写,并且您的代码没有名为CSV
的变量。这不是答案。zengr发布链接的csv库包含一个名为“csv.reader”的函数。。。您的代码缺少导入csv
?这是不正确的…然后将打开('x',…
更改为打开('x,…)
,否则您只会打开名为“x”的文件,而不管传入什么。