1

我是 python 新手,我正在尝试从一个未排序的大型文本文件中提取数据。我想知道是否可以提取文本文档中出现单个单词“stop_codon”的行上的所有数据。这是我到目前为止...

import re
regex = re.compile("stop_codon([^U]+)")

contigdata = open("contigs.txt").read()

for match in regex.finditer(contigdata):
    rules = match.group(0).splitlines()
    for rule in rules:
        if rule and not rule.startswith("#"):
            print rule

这是脚本正在生成的输出,如果它全部在一行上,我会更喜欢。

contig00002 A
stop_codon  2076    2078    .   +   0   transcript_id "g2.t1"; gene_id "g2";

任何帮助将不胜感激!

4

1 回答 1

1

如果您只想在一行中打印所有输出

改变

print rule

print rule,

我们真的不需要正则表达式

with open("contigs.txt") as f:
    for line in f:
        if "stop_codon" in line and line[0] != "#":
            print line,
于 2013-09-02T11:03:27.370 回答