[Py022]类中函数参数传递
2019-01-08 本文已影响26人
安哥生个信
python类中定义函数的时候,可以根据需求决定传入哪些参数。
例如下面这个例子,在__init__
中将Fasta
类可能需要用到的参数全部定义出来,
但是下面具体的delNs
函数根据实际需求来判断到底传入哪些参数。
需要注意的是,delNs
中涉及的类参数,前面加上self
就可以了
class Fasta:
def __init__(self, inFasta=None, outFasta=None, names=None):
self.inFasta = inFasta
self.outFasta = outFasta
self.names = names
def delNs(self):
'''
剔除全部为N碱基的序列
'''
records = SeqIO.parse(self.inFasta, 'fasta')
outrecords = [record for record in records
if any(base != 'N' for base in record.seq)]
return SeqIO.write(outrecords, self.outFasta, 'fasta')