如何消除每条顶行的最后一位数字

1 python file

序列1.1.1 ATGCGCGCGATAAGGCGCTA
ATATTATAGCGCGCGCGCGGATATATATATATATATATT
序列1.2.2 ATATGCGCGCGCGCGCGGCC
ACCCCGCGCGCGCGCGGCGCGATATATATATATATATATT
序列2.1.1 ATTCGCGCGAGTATAGCGGCG

现在,我想删除以'>'开头的每一行的最后一位数字.例如,在第一行中,我想删除'.1'(最右边),在第二行中,我想删除'.2',然后将文件的其余部分写入新文件.谢谢,

Ale*_*lli 7

import fileinput
import re

for line in fileinput.input(inplace=True, backup='.bak'):
  line = line.rstrip()
  if line.startswith('>'):
    line = re.sub(r'\.\d$', '', line)
  print line
Run Code Online (Sandbox Code Playgroud)

许多细节可以根据您想要的处理细节进行更改,但您没有明确表达,但这是一般性的想法.

  • 很好地使用fileinput.我从来没有听说过这个模块. (2认同)