Python 3.x Python3格式化csv,左对齐并重新写入新的csv

Python 3.x Python3格式化csv,左对齐并重新写入新的csv,python-3.x,csv,Python 3.x,Csv,我有一个未对齐的CSV symbol,latestPrice,changePercent,marketCap,peRatio,week52High,week52Low,ytdChange,companyName SENS,2.91,0.41951,1245690090,,5.56,0.3497,2.7574315416379904,Senseonics Holdings Inc RESN,4.07,0.25617,245922111,,8.33,2.09,0.7920190566037737,R

我有一个未对齐的CSV

symbol,latestPrice,changePercent,marketCap,peRatio,week52High,week52Low,ytdChange,companyName
SENS,2.91,0.41951,1245690090,,5.56,0.3497,2.7574315416379904,Senseonics Holdings Inc
RESN,4.07,0.25617,245922111,,8.33,2.09,0.7920190566037737,Resonant Inc
DOCU,233.24,0.19764,45378268496,-178.05,290.23,135.42,0.24685277552856497,DocuSign Inc
JOAN,16.92,0.18987,685586116,,17.01,9.75,0.5710944897959185,JOANN Inc
AMCX,66.8,0.17668,2052849170,12.53,83.63,20.16,1.0441667207156833,AMC Networks Inc - Class A
并尝试重新格式化它们并将其保存到新的csv中

        with open(out_file, 'w') as csvfile:

        writer = csv.writer(csvfile)

        for row in csv_f:
            print('{:<15}  {:<15}  {:<20} {:<25} '.format(*row))
            writer.writerows('{:<15}  {:<15}  {:<20} {:<25} '.format(*row))
但是CSV的重新格式化变成了这样。根本不可读

s
y
m
b
o
l
 
 
 
 
 
 
 
 
 
 
 
l
a
t
e
s
t
P
r
i
c
有人能帮忙吗?谢谢大家!

writer.writerows()
将行集合作为第一个参数。由于传递了一个字符串(字符的集合),因此字符串的每个字符都被视为一个单独的行。改用
writer.writerow()


另一方面,
writer.writerow()
,接受列的集合。确保向其传递一个列列表,而不是一个字符串,如
writer.writerow([您的字符串])

谢谢。这里使用了writer.writerow(),输出的csv看起来更好,但仍然很奇怪<代码>s,y,m,b,o,l,而不是预期的打印格式,即
symbol
。你能启发一下吗?看看最新的答案。
s
y
m
b
o
l
 
 
 
 
 
 
 
 
 
 
 
l
a
t
e
s
t
P
r
i
c