2016-04-04 4 views
0

で次のコードを実行すると、 'ファイル'オブジェクトの属性が '__getitem__'属性を持たない場合、BoaコンストラクタのGUIベースのPythonプログラムで次のコードを実行します。私はBoaのコンストラクタのGUIベースのPythonプログラム

def OnGraphitButton(self, event): 
     VDWAALS=[] 
     file=open("/home/fareeha/Desktop/GraphMDresearch_paper/Sourcecodes/b.csv",'r') 
     line=file.readlines() 
     parts = file[-1].split(",")[0] 
     frame_number = parts 
     for a in line: 
     if 'DELTA Energy Terms' in a: 
      tick=2 
      print ("The frame is: ", frame_number, re.findall("\d+", Bframe_number)) 
      while tick<int(frame_number)+1: 
       print a, "##", frame_number,tick 
       VDWAALS.append(line[line.index(a)+tick].split(',')[1]) 

答えて

0

あなたは文字列のリストになりlineにファイルの内容を読んでいるが、その後、あなたは、このようにエラーの原因となって、fileオブジェクトの代わりに、lineからの最後の行を取得しよう。固定このバグと

コードは次のようになります。

def OnGraphitButton(self, event): 
    VDWAALS=[] 
    file=open("/home/fareeha/Desktop/GraphMDresearch_paper/Sourcecodes/b.csv",'r') 
    line=file.readlines() 
    parts = line[-1].split(",")[0] # <<< FIXED LINE 
    frame_number = parts 
    for a in line: 
     if 'DELTA Energy Terms' in a: 
      tick=2 
      print ("The frame is: ", frame_number, re.findall("\d+", Bframe_number)) 
      while tick<int(frame_number)+1: 
       print a, "##", frame_number,tick 
       VDWAALS.append(line[line.index(a)+tick].split(',')[1]) 

彼らの言うことを説明しようとするのではなく、将来的にあなたの実際のエラートレースバックを投稿していることを確認してください。関連するトレースバックがなくても、他のコードでは最も簡単な間違いだけを簡単に検出できます。

+0

私はそれを私の心に残しておきます –

関連する問題