python - 无法读取/打开/或对 CSV 文件 python 3.4 windows 执行任何操作

标签 python excel csv pandas python-3.4

我无法打开程序生成的任何 CSV 文件(我没有程序的完整详细信息),它的文件名类似于 266925.130314-88850999.word

该文件是一个 csv,它在 excel 2013 中打开并且所有编辑器都正常,我尝试使用原始文件名打开,我尝试通过将扩展名从 .word 更改为 .csv 来打开

没有任何效果,我收到下面详述的错误。

CSV 示例部分

"tes","","2PT26","",4,7,"TEST","SHEEP AND STUFFF                  1kg","",1.1111,9.9999,1,0.000,2.6900,0.0000,0.000,

空闲 gui 中的完整错误消息

>>> open('C:\Console2\edz\test.csv', 'r', newline='', encoding='utf-8')
Traceback (most recent call last):
  File "<pyshell#6>", line 1, in <module>
open('C:\Console2\edz\test.csv', 'r', newline='', encoding='utf-8')
OSError: [Errno 22] Invalid argument: 'C:\\Console2\\edz\test.csv'

Pandas 错误(没有给出完整的,因为它有大量带有回溯的文本 - 如果需要可以添加)

OSError: File b'C:\\Console2\\edz\test.csv' does not exist

我已经测试过这个文件存在

files = os.listdir("C:\Console2\edz")
print (files)

['report.csv', 'test.csv']

我可以使用与 report.csv 完全相同的代码(这个 csv 是一个已知的工作代码,不是由程序创建的)并且它加载正常。

我不明白为什么这个文件打不开,我试过 open/read_csv/read_excel,在 idle 和 pandas 上都产生相同的错误。

正在拔头发,请帮忙。

最佳答案

这里的问题是 Python 使用 escapes在字符串中 - '\t' 是一个制表符,因此当该序列出现在您的路径中时,它会改变含义(请注意在输出中如何转义其他反斜杠)。 Python 正在寻找 'C:\Console2\edz est.csv'

最好的解决方案是对路径使用正斜杠 - Python 会做正确的事情,即使在 Windows 下也是如此。

open('C:/Console2/edz/test.csv', 'r', newline='', encoding='utf-8')

您还可以使用原始字符串 (r'C:\Console2\edz\test.csv') 或转义反斜杠 ('C:\\Console2\\edz\\test.csv') - 但前者无法处理尾随反斜杠,后者难以读写。

关于python - 无法读取/打开/或对 CSV 文件 python 3.4 windows 执行任何操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23572520/

相关文章:

c# - 即使在释放资源后也无法关闭 excel

vba - 如果从右上角关闭 Excel-VBA 表单的实例,则打开时会出现错误 红色 `X`

Python无法读取mysql csv转储

csv - 逗号分隔值.csv格式的一个字段的多个值

python - Beautiful Soup - 在解析树的提取部分之前插入

python - 从两个给定的整数中生成唯一整数 Python Numpy

python - 将多个不同数据类型的 Numpy 数组写入 CSV 文件的列

Excel宏查找文本并将结果存储在新工作表中

Scala:自动检测 CSV 文件中的定界符/分隔符

python - 是否可以将tensorflow代码转换为theano代码?