Python :我在使用 writerows(zip()) 时得到竖排文本
Python : I get vertical text when I use writerows(zip())
我正在尝试编写一个 Python 脚本来创建一个包含多行的文件,该文件的标题和值存储在列中。我是 Python 的新手,所以某处可能有一个愚蠢的错误,但我已经尝试了很多东西,在互联网上查看但我找不到解决问题的方法...
import csv
A=[1,2]
B=[1.5,0.5]
C=[2.5,3]
with open('test.txt', 'w', newline='', encoding='utf-8') as f:
writer = csv.writer(f, delimiter='\t')
writer.writerows(zip("TestA","TestB","TestC"))
writer.writerows(zip(A,B,C))
我期待这样的事情:
TestA TestB TestC
1 1.5 2.5
2 0.5 3
但我得到:
T T T
e e e
s s s
t t t
A B C
1 1.5 2.5
2 0.5 3
有没有人知道我想要什么?
谢谢!
如果不进行一些复杂的列表转置,就无法使用 writer.writerows()
水平书写。相反,为什么不使用 File write()
像这样:
A=[1,2]
B=[1.5,0.5]
C=[2.5,3]
with open('test.txt', 'w', newline='', encoding='utf-8') as f:
f.write('TestA\tTestB\tTestC\n')
for i in range(2):
f.write(str(A[i]) + "\t")
f.write(str(B[i]) + "\t")
f.write(str(C[i]) + "\t\n")
产生:
TestA TestB TestC
1 1.5 2.5
2 0.5 3
这是另一个link应该有用的:Correct way to write line to file?
我正在尝试编写一个 Python 脚本来创建一个包含多行的文件,该文件的标题和值存储在列中。我是 Python 的新手,所以某处可能有一个愚蠢的错误,但我已经尝试了很多东西,在互联网上查看但我找不到解决问题的方法...
import csv
A=[1,2]
B=[1.5,0.5]
C=[2.5,3]
with open('test.txt', 'w', newline='', encoding='utf-8') as f:
writer = csv.writer(f, delimiter='\t')
writer.writerows(zip("TestA","TestB","TestC"))
writer.writerows(zip(A,B,C))
我期待这样的事情:
TestA TestB TestC
1 1.5 2.5
2 0.5 3
但我得到:
T T T
e e e
s s s
t t t
A B C
1 1.5 2.5
2 0.5 3
有没有人知道我想要什么? 谢谢!
如果不进行一些复杂的列表转置,就无法使用 writer.writerows()
水平书写。相反,为什么不使用 File write()
像这样:
A=[1,2]
B=[1.5,0.5]
C=[2.5,3]
with open('test.txt', 'w', newline='', encoding='utf-8') as f:
f.write('TestA\tTestB\tTestC\n')
for i in range(2):
f.write(str(A[i]) + "\t")
f.write(str(B[i]) + "\t")
f.write(str(C[i]) + "\t\n")
产生:
TestA TestB TestC
1 1.5 2.5
2 0.5 3
这是另一个link应该有用的:Correct way to write line to file?