我有一个充满注释的大文本文件,我想使用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] 删除。
我来说两句