Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/346.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 我在代码中犯了什么错误?_Python_Csv_With Statement - Fatal编程技术网

Python 我在代码中犯了什么错误?

Python 我在代码中犯了什么错误?,python,csv,with-statement,Python,Csv,With Statement,出于某种原因,我的代码似乎没有添加到q,它为q打印出0,即使csv文件中有11行,我只想检查csv文件是否为空,代码在我的脚本中不工作,但在python控制台中工作正常 with open('File.csv', 'r') as FILE: q=0;LS = reader(FILE, delimiter=',') for i in LS: q+=1 print q 有人能告诉我我犯了什么错误吗?我真的很困惑。这个I正在遍历LS中的行,所以如果你有一个文件

出于某种原因,我的代码似乎没有添加到q,它为q打印出0,即使csv文件中有11行,我只想检查csv文件是否为空,代码在我的脚本中不工作,但在python控制台中工作正常

with open('File.csv', 'r') as FILE:
    q=0;LS = reader(FILE, delimiter=',')
    for i in LS:
        q+=1
    print q

有人能告诉我我犯了什么错误吗?我真的很困惑。

这个
I
正在遍历
LS
中的行,所以如果你有一个文件有一行,它将是1,如果你有一个空文件,它将是0,等等。。。我怀疑您的文件是空的,或者打开失败。

您确定文件名正确并且在同一文件夹中吗?我用我很快制作的csv文件运行了你的脚本(内容:1,2),它按预期输出了1。还要确保您的示例代码可以自行执行,以便将来从csv导入读取器中包含

您所说的“为q打印0”是什么意思?您的CSV文件的内容是什么?它不回答问题,而是使用;在python中,使用另一行是不好的做法。如果在
for
循环中打印
i
,则可以快速调试代码。我怀疑
LS
是空的,因此
q
保持为0。您应该指定读卡器来自何处reader from csv(请参阅我的帖子)在循环中添加一些调试语句,例如
print I
print q
并查看发生了什么。我做了,它确实打印出来了是的,它包含了那一行,有没有其他方法可以检查csv文件是否为空?您可以将该文件作为常规文件读取,即:fh=open('file.csv','r')作为fh:print line中的行,或者仅使用例如cat读取该文件。