gpt4 book ai didi

python - 如何用逗号替换多种类型的分隔符

转载 作者:行者123 更新时间:2023-12-01 00:37:56 26 4
gpt4 key购买 nike

我的文本文件中有以下字符串

SCF 完成:E(RHF) = -100.055079426 A.U. 9个周期后

目标是通过删除所有不需要的空格并将其替换为逗号来将此字符串转换为 csv 类型数据。这是我到目前为止所拥有的

import csv


f = open('testfile1','r')

x = f.readlines()

s = []

for line in x:

line = line.strip(' ')

line = line.replace(' ',',')

s.append(line)

csvex = csv.writer(open('name.csv', "w"), quoting=csv.QUOTE_ALL)

csvex.writerow(s)

代码给出了以下输出

"SCF Done:,E(RHF) =,-100.055079426,, A.U. after,,9 cycles
"

我希望代码给出以下输出


"SCF,Done:,E(RHF),=,-100.055079426,A.U.,after,9,cycles"

我该如何解决这个问题?

最佳答案

csvwriter.writerow 接受可迭代(列表、元组等)( doc )。

该脚本逐行读取输入文件,分割该行并将其写入 csv 文件。

如果file.txt包含:

SCF Done:  E(RHF) =  -100.055079426     A.U. after    9 cycles

然后这个脚本:

import csv

with open('file.csv', 'w') as f_out, \
open('file.txt', 'r') as f_in:
csvex = csv.writer(f_out, quoting=csv.QUOTE_MINIMAL)
for line in f_in:
csvex.writerow(line.strip().split())

写入 csv 文件 file.csv,内容如下:

SCF,Done:,E(RHF),=,-100.055079426,A.U.,after,9,cycles

关于python - 如何用逗号替换多种类型的分隔符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57601407/

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