“module”对象不可调用生物.IUPAC

2024-06-19 19:21:56 发布

您现在位置:Python中文网/ 问答频道 /正文

当我尝试的时候

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

为什么会遇到以下错误:

^{pr2}$

附言:这是BioPython食谱中的一个例子


Tags: fromimportmy错误seqbiobiopython食谱
2条回答

本给了一个很好的明确的答案来解释这个问题。我猜你把例子抄错了

>>> from Bio.Seq import Seq
>>> from Bio.Alphabet import IUPAC
>>> my_prot = Seq("AGTACACTGGT", IUPAC.protein)
>>> my_prot
Seq('AGTACACTGGT', IUPACProtein())
>>> my_prot.alphabet
IUPACProtein()

至少,它现在是这么说的http://www.biopython.org/DIST/docs/tutorial/Tutorial.html

注意,如果Biopython使用seq(小写)作为模块,seq(title case)作为类-这是Python的推荐实践,请参见http://www.python.org/dev/peps/pep-0008/

在BioPython源代码中,“Seq”类位于路径“/Seq”中的文件“Seq.py”/顺序图““

意思是。。。您需要导入Seq(一个文件),这意味着它是一个“Module”,然后在“Module”Seq中调用类“Seq”

所以试试这个:

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

如果您在Python中对导入的内容和调用的内容感到困惑,可以执行以下操作:

^{pr2}$

相关问题 更多 >