为什么makeblastdb无法处理语法错误

问题描述

import sys
sys.path.append('/home/minhlam/ncbi-blast-2.10.1+/bin/db')
makeblastdb -in human.fa -db mouse.fa -out mousedb -outfmt 5

错误是:

  File "parseBlast.py",line 5
    makeblastdb -in human.fa -db mouse.fa -out mousedb -outfmt 5
                 ^
SyntaxError: invalid Syntax

我检查了多个页面和其他资源,这就是您编写它的方式。任何帮助将不胜感激。

一般来说,我想进行局部爆炸搜索我有2个fasta文件一个human.fa和一个mouse.fa。我需要通过makeblastdb格式化mouse.fa,然后运行blast。使用python的第一个月,需要一些帮助。

解决方法

makeblastdb -in human.fa -db mouse.fa -out mousedb -outfmt 5是一个CLI命令(即您在终端/ shell / CMD中键入的命令)。

这不是有效的Python语法。

如果您确实想从Python脚本中执行它,则可以使用subprocess.Popen

import sys
import subprocess

sys.path.append('/home/minhlam/ncbi-blast-2.10.1+/bin/db')

p = subprocess.Popen(['makeblastdb','-in','human.fa','-db','mouse.fa','-out','mousedb','-outfmt','5'])

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...