python报错no module named_运行Python脚本总是报错 "no module named fasta"

脚本如下:importsysimportfastaimportfastqimportprimerMAX_PRIMER_MISMATCHES=2FileName=sys.argv[1]Primer=sys.argv[2]BarcodeFileName=sys.argv[3]LabelPrefix=sys.argv[4]SeqCou...

脚本如下:

import sys

import fasta

import fastq

import primer

MAX_PRIMER_MISMATCHES = 2

FileName = sys.argv[1]

Primer = sys.argv[2]

BarcodeFileName = sys.argv[3]

LabelPrefix = sys.argv[4]

SeqCount = 0

OutCount = 0

BarcodeMismatchCount = 0

PrimerMismatchCount = 0

PL = len(Primer)

Barcodes = fasta.ReadSeqsDict(BarcodeFileName)

def MatchesPrimer(Seq, Primer):

return primer.MatchPrefix(Seq, Primer)

def FindBarcode(Seq):

global Barcodes

for BarcodeLabel in Barcodes.keys():

Barcode = Barcodes[BarcodeLabel]

# print ""

# print " BC", Barcode

# print "Seq", Seq

if Seq.startswith(Barcode):

# print "+++++++++++++++++++++"

return Barcode, BarcodeLabel

return "", ""

def OnRec(Label, Seq, Qual):

global PL, LabelPrefix, Barcode, SeqCount, OutCount,

BarcodeMismatchCount, PrimerMismatchCount

SeqCount += 1

Barcode, BarcodeLabel = FindBarcode(Seq)

if Barcode == "":

BarcodeMismatchCount += 1

return

BarcodeLength = len(Barcode)

Seq = Seq[BarcodeLength:]

Qual = Qual[BarcodeLength:]

Diffs = MatchesPrimer(Seq, Primer)

if Diffs > MAX_PRIMER_MISMATCHES:

PrimerMismatchCount += 1

return

OutCount += 1

Label = LabelPrefix + str(OutCount) + ";barcodelabel=" + BarcodeLabel

+ ";"

fastq.WriteRec(sys.stdout, Label, Seq[PL:], Qual[PL:])

fastq.ReadRecs(FileName, OnRec)

print >> sys.stderr, "%10u seqs" % SeqCount

print >> sys.stderr, "%10u matched" % OutCount

print >> sys.stderr, "%10u barcode mismatches" % BarcodeMismatchCount

print >> sys.stderr, "%10u primer mismatches" % PrimerMismatchCount

报错内容:

Traceback (most recent call last):

File "fastq_strip_barcode_relabel2.py", line 10, in

import fasta

ImportError: No module named fasta

展开

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值