我试图解析一个大的fasta文件,我遇到了内存错误.一些改进数据处理的建议将不胜感激.目前程序正确打印出名称,但部分通过文件我得到一个MemoryError
这是发电机
def readFastaEntry( fp ):
name = ""
seq = ""
for line in fp:
if line.startswith( ">" ):
tmp = []
tmp.append( name )
tmp.append( seq )
name = line
seq = ""
yield tmp
else:
seq = seq.join( line )
Run Code Online (Sandbox Code Playgroud)
这部分工作后,这里是调用者存根
fp = open( sys.argv[1], 'r' )
for seq in readFastaEntry( fp ) :
print seq[0]
Run Code Online (Sandbox Code Playgroud)
对于那些与fasta格式不相似的人来说,这是一个例子
>1 (PB2)
AATATATTCAATATGGAGAGAATAAAAGAACTAAGAGATCTAATGTCACAGTCTCGCACTCGCGAGATAC
TCACCAAAACCACTGTGGACCACATGGCCATAATCAAAAAGTACACATCAGGAAGGCAAGAGAAGAACCC
TGCACTCAGGATGAAGTGGATGATG
>2 (PB1)
AACCATTTGAATGGATGTCAATCCGACTTTACTTTTCTTGAAAGTTCCAGCGCAAAATGCCATAAGCACC
ACATTTCCCTATACTGGAGACCCTCC
Run Code Online (Sandbox Code Playgroud)
每个条目以">"开头,表示名称等,然后接下来的N行是数据.除了在开头有">"的下一行之外,没有定义的数据结尾.
我目前有以下代码:
<ul id="menu-list">
<a href="index.php"> <li>Home</li> </a>
<li><a href="about.php">About</a></li>
</ul>
Run Code Online (Sandbox Code Playgroud)
列表中的第一个元素允许将整个li块作为链接单击,但不遵循xhtml标准.第二个遵循标准,但只有li中的文本是链接.获得第一个功能是否符合标准?