Python 从一个文件读取数据并写入多个文件
我有一个包含大量数据的文件,如下所示: 输入文件:Python 从一个文件读取数据并写入多个文件,python,bash,Python,Bash,我有一个包含大量数据的文件,如下所示: 输入文件: MOLECULE=AMMONIA N 0.0000000000 0.0000000000 10.0000000000 H 0.5883730000 0.5883730000 10.5883730000 H -0.5883730000 -0.5883730000 10.5883730000 MO
MOLECULE=AMMONIA
N 0.0000000000 0.0000000000 10.0000000000
H 0.5883730000 0.5883730000 10.5883730000
H -0.5883730000 -0.5883730000 10.5883730000
MOLECULE=AMMONIA
N -0.3476074320 -0.2347533040 9.3713354700
H 0.2407655680 0.3536196960 9.9597084700
H -0.9359804320 -0.8231263040 9.9597084700
MOLECULE=AMMONIA
N -1.2368117200 -0.5350340580 8.7012089080
H -0.6484387200 0.0533389420 9.2895819080
H -1.8251847200 -1.1234070580 9.2895819080
我需要一个bash脚本,读取此文件中的所有行,并将其写入多个输出文件,如下所示:
outputfile1:
MOLECULE=AMMONIA
N 0.0000000000 0.0000000000 10.0000000000
H 0.5883730000 0.5883730000 10.5883730000
H -0.5883730000 -0.5883730000 10.5883730000
输出文件2:
MOLECULE=AMMONIA
N -0.3476074320 -0.2347533040 9.3713354700
H 0.2407655680 0.3536196960 9.9597084700
H -0.9359804320 -0.8231263040 9.9597084700
输出文件3:
MOLECULE=AMMONIA
N -1.2368117200 -0.5350340580 8.7012089080
H -0.6484387200 0.0533389420 9.2895819080
H -1.8251847200 -1.1234070580 9.2895819080
我尝试了readarray,但它将所有内容存储在一个一维数组中,现在使用换行符。你能帮我写一行或一个小剧本吗?谢谢 这个问题似乎离题了,因为这是一个我能理解的问题
with open('path/to/input') as infile:
i = 0
f = open('outfile%d'%i, 'w')
for line in infile:
if line.lstrip().startswith("MOLECULE"):
f.close()
i += 1
f = open('outfile%d'%i, 'w')
f.write(line)