imchengxin 发表于 2020-5-20 22:46:27

红色代码运行完,并未向txt文件中写入结果,求大神指点

代码运行未提示错误,但红色代码运行完,并未向txt文件中写入结果,不知为何,求大神指点!
fo=open('sequence.txt','r')
fi=open('result.txt','w')
seq=''
ls=[]
for line in fo:
    if line=='>' and seq=='':
      header=line
    elif line!='>':
      seq+=line.strip()
    else:
      ls.append()
      seq=''
      header = line
ls.append()
ls=sorted(ls,key=lambda x:x)
print(ls)
for item in ls:
    fi.write(item)
    for i in range(len(item)//60):
      fi.write(item+'\n')
      fi.write(item+'\n')
fi.close()
fo.close()

imchengxin 发表于 2020-5-20 22:52:14

sequence.txt内容如下:
>lcl|HQ338291.1_gene_1
MAAAAAAAAAAAAAAA
TTTTAAAAAAAAAAAAA

>lcl|HQ338286.1_gene_1
AGGTTT
CCCCCC

>lcl|HQ338272.1_gene_1
MAAAAGCCC
CCCCCCCCCC

>lcl|HQ338264.1_gene_1
MGGGGAAAAAA
CCCCCCCCCCCC

imchengxin 发表于 2020-5-20 23:05:10

只知道如果,MAAAAAAAAAAAAAAATTTTAAAAAAAAAAAAA这样的字母数不超过60,就无法写入,问题应该是出在range函数与地板除上,但不知道原理

txxcat 发表于 2020-5-20 23:16:16

虽然没大明白你的需求,但可以看出你算法有问题, for i in range(len(item)//60),其中len(item)都小于60,地板除60后等于0,这个循环进不去,里面的内容不会被执行。

imchengxin 发表于 2020-5-20 23:19:09

哦 算错了
页: [1]
查看完整版本: 红色代码运行完,并未向txt文件中写入结果,求大神指点