我在Python中使用csv.writer
编写了一个csv文件。我想在字符串周围插入双引号,所以我向writer添加了quotechar
属性。但是,问题是如果字符串包含单引号,则会出错。
list = []
list.append([1, "foo"])
list.append([2, "bar"])
list.append([3, "foo's bar"])
with open('list.csv', 'w') as f:
writer = csv.writer(f, quotechar = "'")
for row in list:
row[1] = '\"' + row[1] + '\"'
writer.writerow(row)
使用上面的代码,我得到以下list.csv
文件
1,"foo"
2,"bar"
3,'"foo''s bar"'
我希望第3行是"foo's bar"
,没有任何额外的单引号。如何正确地将双引号应用于包含单引号的字符串?
1条答案
按热度按时间f5emj3cl1#
您可以使用
quoting
参数来处理在非数字列周围放置引号的问题。这也使您不必单独向行添加双引号。这将写入所需的输出