私はPythonを学ぶのが初めてで、この仕事をやる必要があります。情報の大きな巨大な海。Pythonの1回の操作で複数のループを書くにはどうすればいいですか?
私はPDBパーサで働いていると私は、次のコードを持っている。この結果に
#Calling the module
from Bio.PDB.PDBParser import PDBParser
#Defining some variables
parser = PDBParser(PERMISSIVE=1)
structure_id= "3caq"
filename = "3caq.pdb"
#This is the actual task to be done
structure = parser.get_structure(structure_id, filename)
#What I'm interested in doing
compound = structure.header['compound']
print structure_id + " |", compound
を:
3caq | {'1': {'synonym': 'delta(4)-3-ketosteroid 5-beta-reductase, aldo-keto reductase family 1 member d1 ', 'chain': 'a, b', 'misc': '', 'molecule': '3-oxo-5-beta-steroid 4-dehydrogenase', 'ec_number': '1.3.1.3','ec': '1.3.1.3', 'engineered': 'yes'}}
事は、私は1つだけで作業していないよということですファイル( "ファイル名"の下で定義されています)しかし、私は "ヘッダー"を抽出する必要があり、上記のヘッダーの "複合"変数だけを保持する必要があるファイルから何百ものファイルを持っています。
私はその行われ、私は次のことを試したことへのためのループを記述する必要が知っている:
#Defining lists
nicknames = { "3caq", "2zb7" }
structures = { "3caq.pdb", "2bz7.pdb" }
structure_id = []
for structure in structures:
structure_id.append(nickname)
filename = []
for structure in structures:
filename.append(structure)
その後、私はパーサを養うが、私はエラーを取得します。
Traceback (most recent call last):
File "/home/tomas/Escritorio/d.py", line 16, in <module>
header = parser.get_structure(structure_id, filename)
File "/usr/local/lib/python2.7/dist-packages/Bio/PDB/PDBParser.py"
, line 82, in get_structure
self._parse(handle.readlines())
AttributeError: 'list' object has no attribute 'readlines'
ループが正しく書かれていないことは間違いありません。
私はループを正しく書く方法について、私が確認できるリソースを使って、または適切なコマンドを使って助けを得ることができれば、本当に感謝しています。
よろしくお願いいたします。
_「私はエラーを取得します」_ - あなたが得ている完全なエラーを投稿できますか? –
は申し訳ありませんが、私はそれについて – TFdoe
トレースバック(最新の呼び出しの最後)忘れてしまった: ヘッダーで、 ファイル "/home/tomas/Escritorio/d.py"、16行を= parser.get_structure(structure_id、ファイル名) ファイル」 get_structure内の/usr/local/lib/python2.7/dist-packages/Bio/PDB/PDBParser.py "、82行目 self._parse(handle.readlines()) AttributeError: 'list'オブジェクトには属性がありません'readlines' –
TFdoe