解析并拆分.txt文件,并使用Python导出为.csv行

黑暗的沉默

我有一个充满注释的大文本文件,我想使用Python将其拆分并分成几行。我已经使其工作了一些,但是它在.csv文件中的每个单元格中添加了一个字母,而不是整个部分。我插入了@@@字符来表示每个部分需要在哪里拆分。例如,这是我的.txt文件的样子:

@@@ jlkdlkjdlkjdalkjdalk @@@ 78278947298729874298742 @@@ llkdlaklkdalkdsa
@@@ nmczxmnczxmncz

我最终希望将其导出到.csv中,因此如下所示:

ID | Reporttext

1  | jlkdlkjdlkjdalkjdalk 
2  | 78278947298729874298742 
3  | llkdlaklkdalkdsa
4  | nmczxmnczxmncz

现在,它正在像这样导出:jlkdlk(依此类推)。

这是我的代码:

以open(“ thetext.txt”)的形式将re,csv导入为f:表示行中f:表示line.split(“ @@@”)中的单词:带有open(r'theoutput.csv','a')为g:writer = csv.writer(g)writer.writerow(word)print(word)

因此,仅重申一下,我的问题是避免导出时的间距(例如this)。

谢谢!

他们只有

您可以对@类似的东西进行剥离和分割

$ cat txt2csv.py 
import csv

with open('some.txt') as file_, open('some_new.csv', 'w') as csvfile:
    lines = [x for x in file_.read().strip().split('@') if x]
    writer = csv.writer(csvfile, delimiter='|')
    writer.writerow(('ID', 'Reporttext'))
    for idx, line in enumerate(lines, 1):
        writer.writerow((idx, line.strip('@')))

然后输入文件

$ cat some.txt 
@@@ jlkdlkjdlkjdalkjdalk @@@ 78278947298729874298742 @ llkdlaklkdalkdsa @@@ nmczxmnczxmncz

和输出文件,

$ cat some_new.csv 
ID|Reporttext
1| jlkdlkjdlkjdalkjdalk 
2| 78278947298729874298742 
3| llkdlaklkdalkdsa 
4| nmczxmnczxmncz

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章