Python 从 csv 中去掉每一个双引号
Python strip every double quote from csv
您好,我有一个如下所示的 csv 文件。
"AB" ; "AA" ; "BA" ; "HI"
"CD" ; "BB" ; "BC" ; "JK"
"EF" ; "CC" ; "CE" ; "LM"
"GH" ; "DD" ; "DG" ; "MN"
我如何获得以下代码以去除 csv 文件中每一列的所有双引号,因为现在它只去除第一列。谢谢
import csv
f = open("wakhawakha.csv", 'rt')
try:
for row in csv.reader(f, delimiter=' ', skipinitialspace=True):
print('|'.join(row))
finally:
f.close()
这是你想要的吗?
for row in csv.reader(f, delimiter=';', skipinitialspace=True):
print (''.join(row))
打开它并先读取字符串。
import csv
with open("wakhawakha.csv", 'rt') as f:
data = f.read()
new_data = data.replace('"', '')
for row in csv.reader(new_data.splitlines(), delimiter=' ', skipinitialspace=True):
print ('|'.join(row))
编辑 我注意到您更改了缩进。您的 OP 中的缩进是错误的:
现在好了:
f = open("wakhawakha.csv", 'rt')
try:
for row in csv.reader(f, delimiter=' ', skipinitialspace=True):
print ('|'.join(row))
finally:
f.close()
这样输出是这样的:
AB|;|AA|;|BA|;|HI
CD|;|BB|;|BC|;|JK
EF|;|CC|;|CE|;|LM
GH|;|DD|;|DG|;|MN
这是您想要的输出吗?或者,您只是想去掉所有双引号吗?如果是这样,请更改代码中的这一行:
print ('|'.join(row))
对此:
print (' '.join(row))
然后你会得到这个输出:
AB ; AA ; BA ; HI
CD ; BB ; BC ; JK
EF ; CC ; CE ; LM
GH ; DD ; DG ; MN
您好,我有一个如下所示的 csv 文件。
"AB" ; "AA" ; "BA" ; "HI"
"CD" ; "BB" ; "BC" ; "JK"
"EF" ; "CC" ; "CE" ; "LM"
"GH" ; "DD" ; "DG" ; "MN"
我如何获得以下代码以去除 csv 文件中每一列的所有双引号,因为现在它只去除第一列。谢谢
import csv
f = open("wakhawakha.csv", 'rt')
try:
for row in csv.reader(f, delimiter=' ', skipinitialspace=True):
print('|'.join(row))
finally:
f.close()
这是你想要的吗?
for row in csv.reader(f, delimiter=';', skipinitialspace=True):
print (''.join(row))
打开它并先读取字符串。
import csv
with open("wakhawakha.csv", 'rt') as f:
data = f.read()
new_data = data.replace('"', '')
for row in csv.reader(new_data.splitlines(), delimiter=' ', skipinitialspace=True):
print ('|'.join(row))
编辑 我注意到您更改了缩进。您的 OP 中的缩进是错误的: 现在好了:
f = open("wakhawakha.csv", 'rt')
try:
for row in csv.reader(f, delimiter=' ', skipinitialspace=True):
print ('|'.join(row))
finally:
f.close()
这样输出是这样的:
AB|;|AA|;|BA|;|HI
CD|;|BB|;|BC|;|JK
EF|;|CC|;|CE|;|LM
GH|;|DD|;|DG|;|MN
这是您想要的输出吗?或者,您只是想去掉所有双引号吗?如果是这样,请更改代码中的这一行:
print ('|'.join(row))
对此:
print (' '.join(row))
然后你会得到这个输出:
AB ; AA ; BA ; HI
CD ; BB ; BC ; JK
EF ; CC ; CE ; LM
GH ; DD ; DG ; MN