我在这里看到了很多关于如何从CSV文件中的一行中删除引号的问题,但这不是我的问题.使用类似的东西
with open(path), 'wb') as myfile:
writer = csv.writer(myfile)
Run Code Online (Sandbox Code Playgroud)
我需要创建由3个变量的值组成的行.这导致了这样一条线:
newline = var1 + " " + var2 + " " + var3
Run Code Online (Sandbox Code Playgroud)
我想要一个结果value1 value2 value3
,但它给了我"value1 value2 value3"
.我尝试过它之间没有空格,所有这些都搞砸了格式而没有删除引号.我也尝试quoting = CSV_NOQUOTE
在编写器声明中添加(或者类似的东西),但是在我添加之前,这导致了关于丢失escapechars的错误\n
,即便如此它也没有删除引号.我一直在搜索这里的页面大约一个小时试图找到一些东西,但我找不到任何东西.有人可以提供任何建议吗?谢谢!
编辑:为了配合标题,此时我对此感到沮丧,我可以通过一种解决方法来摆脱带有正则表达式的引号,而不是阻止它们形成.我只是不太了解Python的正则表达式,我已经非常简单地使用它了,而且我不确定如何基本上用它来做一个sed s /命令.
您没有显示实际用于writer
在文件中写入行的行.人们有时犯的一个错误就是假设writerow
接受除了可迭代值之外的其他东西.
以下代码(python 2):
import csv
with open("out.dat", "wb") as myfile:
writer = csv.writer(myfile, delimiter=" ", quoting=csv.QUOTE_NONE)
var1, var2, var3 = 3.14, 2.1728, "Fred"
writer.writerow([var1, var2, var3])
Run Code Online (Sandbox Code Playgroud)
产生
~/coding$ cat out.dat
3.14 2.1728 Fred
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
358 次 |
最近记录: |