如何解决如何使用python将列表中的项目写入csv中的行
我有一个名为itemresults
的列表,看起来像这样:
['24500','17000','60000','56300','24500','114950','32000','70000','46948','133000','49550','51600','35995','44500','19300','34200','39964','59900','27999','16100','39000','78995','19101','25000','30000','72000','39900','29000','24900','22990','52600','82600','64000','13999','29500','46800','95000','42900','32500','3969','36000','32995','24000','49999.99','37500','34000','47600','43500','28500']
我想将此代码写入一个csv文件,以便每一行都是列表中的一项,因此基本上看起来像这样:
24500
17000
60000
56300
24500
.....
我尝试使用不同的方法来执行此操作,但是每次它只将整个列表写入一个单元格中。我试过使用这样的嵌套列表:
outputFile = open('outputFile.csv','w',newline='')
outputWriter = csv.writer(outputFile)
outputWriter.writerow([elements])
但是那仍然只是将整个列表写入第一个单元格。我希望将每个项目写到新行。有谁知道我怎么能做到这一点?谢谢
解决方法
尝试一下。
import csv
itemresults = ['24500','17000','60000','56300','24500','114950','32000','70000','46948','133000','49550','51600','35995','44500','19300','34200','39964','59900','27999','16100','39000','78995','19101','25000','30000','72000','39900','29000','24900','22990','52600','82600','64000','13999','29500','46800','95000','42900','32500','3969','36000','32995','24000','49999.99','37500','34000','47600','43500','28500']
filename = 'outputFile.csv'
with open(filename,'w') as csvfile:
csvwriter = csv.writer(csvfile)
for x in itemresults:
csvwriter.writerow([x])
,
这里不需要使用csv.writer。您可以直接写数字并使用'\n'.join(itemresults)
格式化它们:
...
outputFile.write('\n'.join(itemresults))
...
,
您可以使用常规的python文件处理来实现以下目的:
your_list = ['24500','28500']
with open("outputFile.csv","w") as outputFile:
for item in your_list:
outputFile.write(f'{item}\n')
,
从列表中创建一个DataFrame,然后创建csv
# import pandas as pd
import pandas as pd
# list of strings
lst = ['Geeks','For','Geeks','is','portal','for','Geeks']
# Calling DataFrame constructor on list
df = pd.DataFrame(lst)
df.to_csv("result.csv")
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。