4

試してみると、

from Bio.Alphabet import IUPAC
from Bio import Seq
my_prot = Seq("AGTACACTGGT", IUPAC.protein)

次のエラーが発生するのはなぜですか。

TypeError: 'module' object is not callable

PS: これは BioPython のクックブックの例です

4

2 に答える 2

8

BioPython ソース コードでは、「Seq」クラスはファイル「Seq.py」のパス「/Seq/Seq.py」にあります。

意味...「モジュール」を意味するSeq(ファイル)をインポートし、「モジュール」「Seq」内でクラス「Seq」を呼び出す必要があります

だからこれを試してください:

from Bio.Alphabet import IUPAC
from Bio import Seq
my_prot=Seq.Seq("AGTACACTGGT",IUPAC.protein)

何をインポートしていて、何を呼び出しているかについて Python で混乱したことがある場合は、次のようにすることができます。

import Bio.Seq
print type(Bio.Seq)
>>> <type 'module'>
print type(Bio.Seq.Seq)
>>> <type 'classobj'>
于 2011-04-01T21:51:57.337 に答える