with open('StockPrice.csv', 'wb') as f:
Run Code Online (Sandbox Code Playgroud)
为什么我们需要在二进制文件中打开csv文件?
这只是习惯,还是有一个用例,当csv文件需要二进制文件时?
在Windows上"wb"使用csv模块写入输出时必须使用该模式,因为无论您运行的是什么平台,csv模块都会写出行结束\r\n.
如果您在Windows上运行,并且您有一个打开模式的文件"w",Python每次编写换行符时都会添加一个额外的回车符.因此,如果您使用带模式的文件"w"来使用csv模块编写输出,您将最终得到\r\r\n行结尾,因为Python和csv模块都添加了回车符.
这是一个演示结果的快速程序.请注意,我们读到以二进制方式(文件"rb"),以防止Python从替换\r\n用\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())
Run Code Online (Sandbox Code Playgroud)
当我在Windows上运行它时,我得到以下输出:
'1,2,3,4\r\r\n5,6,7,8\r\r\n'
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1298 次 |
| 最近记录: |