2024-04-29 20:15:50 发布
网友
例如:Writing to csv file in Python
with open('StockPrice.csv', 'wb') as f:
为什么我们需要用二进制文件打开csv文件?在
这仅仅是一种习惯,还是说csv文件需要二进制文件?在
在Windows上使用csv模块编写输出时,必须使用"wb"模式,因为无论您在哪个平台上运行,csv模块都会将行尾写成\r\n。在
csv
"wb"
\r\n
如果您在Windows上运行,并且有一个以"w"模式打开的文件,Python将在每次编写换行符时添加一个额外的回车符。因此,如果您使用模式为"w"的文件来使用csv模块编写输出,那么您将以\r\r\n行结束,因为Python和csv模块都添加了回车符。在
"w"
\r\r\n
下面是一个演示结果的快速程序。请注意,我们以二进制模式("rb")读取文件,以防止Python在读回文件时将\r\n替换为\n:
"rb"
\n
import csv with open("output.csv", "w") as f: w = csv.writer(f) w.writerow([1,2,3,4]) w.writerow([5,6,7,8]) with open("output.csv", "rb") as f: print repr(f.read())
在Windows上运行此程序时,我得到以下输出:
在Windows上使用
csv
模块编写输出时,必须使用"wb"
模式,因为无论您在哪个平台上运行,csv
模块都会将行尾写成\r\n
。在如果您在Windows上运行,并且有一个以
"w"
模式打开的文件,Python将在每次编写换行符时添加一个额外的回车符。因此,如果您使用模式为"w"
的文件来使用csv
模块编写输出,那么您将以\r\r\n
行结束,因为Python和csv
模块都添加了回车符。在下面是一个演示结果的快速程序。请注意,我们以二进制模式(
"rb"
)读取文件,以防止Python在读回文件时将\r\n
替换为\n
:在Windows上运行此程序时,我得到以下输出:
^{pr2}$相关问题 更多 >
编程相关推荐