我有一个文件"testread.txt“,其中包含以下数据。
A
1
2
3
4
BA
5
6
7
8
CB
9
10
11
D
12
13
14
15我想逐节读取和提取数据,并将其写入不同的文件。例如;
1
2
3
4将其写入文件"a.txt“
5
6
7
8将其写入文件"b.txt“
9
10
11将其写入文件"c.txt“,依此类推。
发布于 2019-05-17 01:54:05
可以使用以下命令获得(粗略的)解决方案:
用于划分和存储items;
numpy.savetxt以将其保存到文件中的import numpy as np
from collections import defaultdict
with open('testread.txt', 'r') as f:
content = f.readlines()
d = defaultdict(list)
i = 0
for line in content:
if line == '\n':
i+=1
else:
d[i].append(line.strip())
for k,v in d.items():
np.savetxt('file{}.txt'.format(k), v[1:], delimiter=",", fmt='%s')然后你会得到:
file0.txt1
2
3
4file1.txt5
6
7
8file2.txt9
10
1112
13
14
15发布于 2019-05-17 01:44:21
这个想法是当一个新的空行可用时跳过文件。下面的代码应该可以做到这一点。
files_list = ['a.txt', 'b.txt', 'c.txt']
fpr = open('input.txt')
for f in files_list:
with open(f, 'w') as fpw:
for i, line in enumerate(fpr):
if i == 0: # skips first line
continue
if line.strip():
fpw.write(line)
else:
breakhttps://stackoverflow.com/questions/56173773
复制相似问题