特別な種類のファイルを入力として受け取る Python スクリプトを作成しようとしています。
このファイルには複数の遺伝子に関する情報が含まれており、1 つの遺伝子に関する情報が複数の行にまたがって記述されており、行数は遺伝子ごとに同じではありません。例は次のとおりです。
gene join(373616..374161,1..174)
/locus_tag="AM1_A0001"
/db_xref="GeneID:5685236"
CDS join(373616..374161,1..174)
/locus_tag="AM1_A0001"
/codon_start=1
/transl_table=11
/product="glutathione S-transferase, putative"
/protein_id="YP_001520660.1"
/db_xref="GI:158339653"
/db_xref="GeneID:5685236"
/translation="MKIVSFKICPFVQRVTALLEAKGIDYDIEYIDLSHKPQWFLDLS
PNAQVPILITDDDDVLFESDAIVEFLDEVVGTPLSSDNAVKKAQDRAWSYLATKHYLV
QCSAQRSPDAKTLEERSKKLSKAFGKIKVQLGESRYINGDDLSMVDIAWLPLLHRAAI
IEQYSGYDFLEEFPKVKQWQQHLLSTGIAEKSVPEDFEERFTAFYLAESTCLGQLAKS
KNGEACCGTAECTVDDLGCCA"
gene 241..381
/locus_tag="AM1_A0002"
/db_xref="GeneID:5685411"
CDS 241..381
/locus_tag="AM1_A0002"
/codon_start=1
/transl_table=11
/product="hypothetical protein"
/protein_id="YP_001520661.1"
/db_xref="GI:158339654"
/db_xref="GeneID:5685411"
/translation="MLINPEDKQVEIYRPGQDVELLQSPSTISGADVLPEFSLNLEWI
WR"
gene 388..525
/locus_tag="AM1_A0003"
/db_xref="GeneID:5685412"
CDS 388..525
/locus_tag="AM1_A0003"
/codon_start=1
/transl_table=11
/product="hypothetical protein"
/protein_id="YP_001520662.1"
/db_xref="GI:158339655"
/db_xref="GeneID:5685412"
/translation="MKEAGFSENSRSREGQPKLAKDAAIAKPYLVAMTAELQIMATET
L"
今、私が欲しいのは、次のように、すべての辞書に 1 つの遺伝子に関する情報が含まれている辞書のリストを作成することです。
gene_1 = {"locus": /locus_tag, "product": /product, ...}
gene_2 = {"locus": /locus_tag, "product": /product, ...}
ある遺伝子/辞書がいつ終了し、次の遺伝子/辞書が開始されるべきかをPythonに知らせる方法がまったくわかりません。
誰か助けてくれませんか?これを行う方法はありますか?
明確にするために:必要な情報を抽出し、変数に保存して辞書に入れる方法を知っています。遺伝子ごとに 1 つの辞書を作成するように Python に指示する方法がわかりません。