Python 以 csv 格式写入文件,行写入有问题
Python file write in csv, problem with row write
我正在尝试为无限循环编写一个包含一组 4 个值(4 列)的 csv。我创建了一个测试代码来尝试这个,但是当我 运行 代码时,我在 csv 中得到的值是错误的。
import csv
fields = ['Number1', 'Number2', 'Number3', 'Number4']
filename = "test.csv"
with open(filename, 'w') as csvfile:
csvwriter = csv.writer(csvfile)
csvwriter.writerow(fields)
for i in range(10):
rows=[]
for o in range(4):
rows.append(str(o))
csvwriter.writerows(rows)
我在 csv 中得到的值是:
Number1,Number2,Number3,Number4
0
1
2
3
0
1
2
3
0
1
2
3
0
1
2
3
0
1
2
3
0
1
2
3
0
1
2
3
0
1
2
3
0
1
2
3
0
1
2
3
我的代码有什么问题,或者我应该修改什么来解决这个问题?
您在循环内调用 writerows 而不是 writerow
。这告诉 python 将可迭代对象写成多行。
我正在尝试为无限循环编写一个包含一组 4 个值(4 列)的 csv。我创建了一个测试代码来尝试这个,但是当我 运行 代码时,我在 csv 中得到的值是错误的。
import csv
fields = ['Number1', 'Number2', 'Number3', 'Number4']
filename = "test.csv"
with open(filename, 'w') as csvfile:
csvwriter = csv.writer(csvfile)
csvwriter.writerow(fields)
for i in range(10):
rows=[]
for o in range(4):
rows.append(str(o))
csvwriter.writerows(rows)
我在 csv 中得到的值是:
Number1,Number2,Number3,Number4
0
1
2
3
0
1
2
3
0
1
2
3
0
1
2
3
0
1
2
3
0
1
2
3
0
1
2
3
0
1
2
3
0
1
2
3
0
1
2
3
我的代码有什么问题,或者我应该修改什么来解决这个问题?
您在循环内调用 writerows 而不是 writerow
。这告诉 python 将可迭代对象写成多行。