with open("test.csv", "r") as csvFile:
reader = csv.reader(csvFile, skipinitialspace=True)
for row in reader:
for obj in row:
print(obj)
和示例性csv文件:
anotherCommand, e=5, f=6, g=7, h=9, test="aaa, bbb, ggggg"
我希望以这种方式拆分此字符串:
anotherCommand
e=5
f=6
g=7
h=9
test="aaa, bbb, ggggg"
但我呈现的代码,以这种方式分割这些字符串:
anotherCommand
e=5
f=6
g=7
h=9
test="aaa
bbb
ggggg"
这是解决这个问题的错误方法。 我看到的话题如下: Why is the Python CSV reader ignoring double-quoted fields? 要么 How can i parse a comma delimited string into a list (caveat)?
但是这个例子是不同的,这些例子不符合我的期望。 有人有想法吗?
答案 0 :(得分:1)
你可以在这里使用shlex.split
:
import shlex
with open('test.csv') as fin:
for line in fin:
row = [col.rstrip(',') for col in shlex.split(line)]
print(*row, sep='\n')