我正在运行(生物)python脚本,导致以下错误:
from: can't read /var/mail/Bio
看到我的脚本与邮件没有任何关系,我不明白为什么我的脚本会查找/ var / mail。
这里似乎有什么问题?我怀疑它会有所帮助,因为脚本似乎不是问题,但无论如何这里是我的脚本:
from Bio import SeqIO
from Bio.SeqUtils import ProtParam
handle = open("examplefasta.fasta")
for record in SeqIO.parse(handle, "fasta"):
seq = str(record.seq)
X = ProtParam.ProteinAnalysis(seq)
print X.count_amino_acids()
print X.get_amino_acids_percent()
print X.molecular_weight()
print X.aromaticity()
print X.instability_index()
print X.flexibility()
print X.isoelectric_point()
print X.secondary_structure_fraction()
这里有什么问题?糟糕的python设置?我真的不认为这是剧本。
答案 0 :(得分:147)
不,这不是脚本,事实上你的脚本根本不是由Python执行的。如果您的脚本存储在名为script.py
的文件中,则必须将其作为python script.py
执行,否则默认的shell将执行它,它将以from
关键字进行挽救。 (顺便说一句,from
是命令行实用程序的名称,它打印已将邮件发送到给定用户名的人的名称,这就是它尝试访问邮箱的原因。)
另一种可能性是将以下行添加到脚本的顶部:
#!/usr/bin/env python
这将指示您的shell通过python
执行脚本,而不是试图自己解释它。
答案 1 :(得分:9)
我遇到了类似的错误
“from:无法读取/var/mail/django.test.utils”
尝试运行命令时
>>> from django.test.utils import setup_test_environment
>>> setup_test_environment()
<{3}} 中的教程中的在阅读了Tamás的答案之后 我意识到我没有在python shell中尝试这个命令,而是在termnial中(这可能发生在那些刚接触linux的人身上)
解决方案是首先使用命令python进入python shell 当你得到这些&gt;&gt;&gt; 然后运行任何python命令
答案 2 :(得分:4)
同样在这里。从终端运行导入命令而没有通过django项目中的manage.py激活python3 shell时出现此错误(是的,我还是新手)。正如人们所期望的那样,激活shell允许正确解释命令。
./manage.py shell
然后才
>>> from django.contrib.sites.models import Site
答案 3 :(得分:3)
将其放在.py文件顶部
#!/usr/bin/env python
对于python 2.x,或
#!/usr/bin/env python3
对于python 3.x
这应该查找python环境,没有它,它将执行代码,就好像它不是python代码,而是直接进入CLI。如果您需要指定python环境的手动位置,请放
#!/#path/#to/#python
答案 4 :(得分:1)
我遇到了同样的错误,因为我试图继续运行
XXX-Macmini:Python-Project XXX.XXX$ from classDemo import MyClass
from: can't read /var/mail/classDemo
要解决此问题,请键入命令 python ,然后在获得这些信息时>>> 然后运行任何python命令
>>>from classDemo import MyClass
>>>f = MyClass()
答案 5 :(得分:-1)
对于Mac OS,只需转到应用程序并运行以下脚本即可:Install Certificates.command和Update Shell Profile.command,现在可以使用。