||
依次进入一系列工作路径,读取总能,并按照一定格式把不同路径下的总能汇总到一个文件
import os, shutil, sys, re for i in range(1,31): os.chdir(str(i)) # grep "TOTEN" and put lines in TOTEN.dat f=open('OUTCAR','r') q=open('TOTEN.dat','a+') line1=f.readlines() for l in line1: if "TOTEN" in l: q.writelines(l) f.close() q.close() # get the last line of TOTEN.dat with open('TOTEN.dat','r') as ff: lines=ff.readlines() last_line=lines[-1] print('The last TOTEN is:'+last_line) qq=open('TOTEN2.dat','a+') qq.writelines(last_line) qq.close() #get the data fff=open('TOTEN2.dat','r') line2=fff.readlines() data=line2[0].split() print(data) print(data[4]) print(str(i)+" "+data[4]) #write final energy into TOTEN3.dat qqq=open('../TOTEN3.dat','a+') qqq.write(str(i)+" "+data[4]+"\n") fff.close() qqq.close() os.chdir("../")
执行结果TOTEN3.dat
1 -153.71824628 2 -153.18614745 3 -154.14169772 4 -153.68921829 5 -153.65002750 6 -153.54539005 7 -153.78996678 8 -152.99522873 9 -153.41438252 10 -153.92739699 11 -153.75133374 12 -153.62217501 13 -153.89559929 14 -153.56513007 15 -153.88254564 16 -154.64777096 17 -153.98429564 18 -153.64316327 19 -153.77159553 20 -153.90380788 21 -153.91626781 22 -154.07579453 23 -152.99633895 24 -153.91533939 25 -153.50721184 26 -153.45006651 27 -154.38704162 28 -153.28707431 29 -153.56616455 30 -153.69711770
Archiver|手机版|科学网 ( 京ICP备07017567号-12 )
GMT+8, 2024-7-19 18:18
Powered by ScienceNet.cn
Copyright © 2007- 中国科学报社