我试图让csv作者使用双引号作为转义字符,如果双引号出现在数据字段中,则将双引号添加到双引号中。
我的功能是工作的一部分。
如有任何建议,将不胜感激。
输入记录:ab“c”,"def“
函数返回的实际输出: abc",def
我正在努力实现的输出“abc”,“def”
输入文件可能包含这样的记录:
1 "mystring1","mystring2“
2 "mystring3","mystring4“
3,“我的”ring5“,"mystring6”
注意,记录3在字段中有一个双引号。
我想通过添加以下的双引号来避免
一个双引号,然后引用整个字段。
1,mystring1,mystring2
2,mystring3,mystring4
3,"myst""ring5",mystring6
我调用的函数
def parse_file(element):
for line in csv.reader([element], quotechar='"', delimiter=','):
output_str = io.StringIO()
cw = csv.writer(output_str, quotechar='"', delimiter=',', escapechar='"', quoting=csv.QUOTE_MINIMAL)
cw.writerow(line)
output_str.close()
clean_line = ', '.join(line)
return clean_line发布于 2020-08-06 11:41:01
下面是一个简单的解决方案,它接受string类型的输入元素。
vec = str('"ab"c","def""')
print(list(map(lambda x: '"' + x + '"' if '""' in x else x, [y.strip('"').replace('"', '""') for y in vec.split(',')])))如果我能理解黄先生的话我很抱歉
https://stackoverflow.com/questions/63280721
复制相似问题