gpt4 book ai didi

python - 来自字符串输出的 CSV 文件

转载 作者:行者123 更新时间:2023-11-28 21:06:26 26 4
gpt4 key购买 nike

我有这种字符串输出:

Gender,Age,Weight,Height
Male, 55, 82, 180
Female, 34,55,167
Female,44,67,182
Male,81,73,175
Male,44,34,87,185

从该输出生成 CSV 文件的最简单方法是什么?我尝试了一些 StringIO 方法,但我无法让它们在 Python 3.6.0 中工作。

最佳答案

第一种方法:使用 StringIO

这是我针对 Python 3.6 测试的方法:

import csv
from io import StringIO

my_string = """
Gender,Age,Weight,Height
Male, 55, 82, 180
Female, 34,55,167
Female,44,67,182
Male,81,73,175
Male,44,34,87,185
"""

buffer = StringIO(my_string)

reader = csv.reader(buffer, skipinitialspace=True)
with open('string2csv.csv', 'w') as out_file:
writer = csv.writer(out_file)
writer.writerows(reader)

string2csv.csv 文件的内容:

Gender,Age,Weight,Height
Male,55,82,180
Female,34,55,167
Female,44,67,182
Male,81,73,175
Male,44,34,87,185

注意事项

  • 由于输入字符串在逗号后有空格(换句话说,条目前有初始空格),我使用 skipinitialspace=True 参数去除这些空格。
  • 通过使用 writerows(复数)而不是 writerow(单数),我可以写更少的代码

第二种方法:分割线

如果您不想使用 StringIO,那么我们可以拆分行,将它们输入 csv.reader 并获得相同的结果:

my_string = """
Gender,Age,Weight,Height
Male, 55, 82, 180
Female, 34,55,167
Female,44,67,182
Male,81,73,175
Male,44,34,87,185
"""
reader = csv.reader(my_string.splitlines(), skipinitialspace=True)
with open('string2csv.csv', 'w') as out_file:
writer = csv.writer(out_file)
writer.writerows(reader)

关于python - 来自字符串输出的 CSV 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42834861/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com