ファイルのデータを抽出しようとしています。その目的のために、ファイルを読み込むスクリプトを作成し、いくつかのキーワードが検出された場合はコピーを開始し、空白行が見つかるとコピーを停止します。私はそれがあまりにも悪くないと思うが、働いていない。ファイルの情報を正しく抽出できない
私が書いたPythonスクリプトは次のとおりです。
CURRENT BEST VALUE OF HEAT OF FORMATION = -1161.249249
cycles=200 pm6 opt singlet eps=80 charge=-1
C -3.87724655 +1 1.30585983 +1 4.53273224 +1
H -7.60628859 +1 0.53968618 +1 3.72680573 +1
O -4.76978297 +1 4.45409715 +1 1.42608903 +1
H -4.66890488 +1 4.47267425 +1 2.41952335 +1
H -5.59468165 +1 3.93399792 +1 1.27757138 +1
**********************
* *
* JOB ENDED NORMALLY *
* *
**********************
が、それは
を「構造が見つからない」印刷します
def out_to_mop (namefilein, namefileout):
print namefilein
filein=open(namefilein, "r")
fileout=open(namefileout, "w")
lines = filein.readlines()
filein.close()
#look for keyword "CURRENT.." to start copying
try:
indexmaxcycle = lines.index(" CURRENT BEST VALUE OF HEAT OF FORMATION")
indexmaxcycle += 5
except:
indexmaxcycle = 0
if indexmaxcycle != 0:
while lines[indexmaxcycle]!=" \n":
linediv = lines[indexmaxcycle].split()
symbol = linediv[0]
x = float(linediv[1])
indexmaxcycle += 1
fileout.write("%s \t %3.8f 1 \n" %(symbol, x))
else:
print "structure not found"
exit()
fileout.close()
この関数は、このファイルから情報を抽出することになっているがfile1.out
と呼ばれます少し助けてくれますか?
あなたは 'except exception exceptions with e:'、 'print(e)'を使って 'exception'文を完成させた方がよいでしょう。間違ったものが表示されます – PRMoureu