如何计算输出文件中的字母N,输出文件是写入txt文件的字符串列表?

路加

解决了

我需要能够计算输出文件中所有字符串中的'N'数量。但是,当我打印结果时,我总是得到0或无。有人在我的代码中看到错误吗?

def ncount(filename):
    count = 0
    with open(filename, 'r') as file:
        for words in file:
            if words in file == "N":
                count = count + 1
                return count
count = ncount("output_seq.txt")
print(count)

输出文件如下所示:

["GATTTTCTATGACATCTAGAAGAAAAAGAAAGACTATAAGATGTATAAAAACAAGAGGNNCNGAGAAAATCGAGACAGGTGGTGAGAATCTGCCGAATTAN", 
"AACATTGCTGAGAGGTTCGATCGTGATCCCTGCAAGAAAAAATAAAGGTGGAGATGATNNCNCAATGTATGTTGTCTCGTCACACTGGTTTAATGATTTTN", 
"CTTTTTTTTAAATATTTCGGGCGGTAATTTTTTCTGCCATCTTTTTCACTAAGAAAACTTTCAGGCGTTGTTAAGCGGTGGAATCTATAGAGCTGTCTCTT", 
"ATGTATCTAACGAGACAGCAATGGGAATTTTGTATTAAAAAAAAGAAGAAATACATATTTTGAAACAGGAATGTTGTTTGATTTTTAAAGAAAAAAGGAAA", 
"TCCAGACGCAAAANNNNNNNNTTTTTGTCTCAAGACTACAGTACCCTGGGTCTCGCCACGAAAATTGTTTGTTAAATGAGAAAATGTGTGCGCCTTTAAAG", 
""]

这是一个虚拟文件,仅包含5个序列。实际文件包含数千个这些字符串

我一直收到的输出是:

0
hr

用于file.readlines()将文件作为字符串逐行迭代。然后,您可以简单地使用count()计算字符串中术语出现方法:

def ncount(filename):
    count = 0
    with open(filename, 'r') as myfile:
        for line in myfile.readlines():
            count += line.count('N')
    return count
count = ncount("somefile.txt")
print(count)

对于您的"output_seq.txt"文件,此输出16

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章