我从一个.tsv文件中读取字符串值,进行过滤,然后写入一个新文件。当一行的项有双引号时,它会将它们加倍,并将周围的引号添加到该项中。例如:
with open ("test.tsv", "wb") as fp:
fp = csv.writer (fp, delimiter='\t')
fp.writerow (["test"])
fp.writerow (["Oh no! \"They\" are here!"])
这将在中创建以下项测试.tsv地址:
test
"Oh no! ""They"" are here!"
我到处找,找不出它为什么会这样,也找不出我能做些什么来改变它。我希望它保持报价,而不是重复,所以首选测试.tsv可能是:
test
Oh no! "They" are here!
你知道怎么解决这个问题吗?谢谢!你知道吗
设置
quoting=csv.QUOTE_NONE
和quotechar=None
。那么引号将不会被转义。你知道吗然后您应该设置
escapechar
,以便在分隔符出现在字段中时对其进行转义。(感谢@dano提到这一点)请记住,由于没有单独的字段,因此当前的示例没有给出任何使用csv/tsv的理由。你知道吗
相关问题 更多 >
编程相关推荐