Как увеличить число в файле с помощью регулярного выражения - PullRequest
0 голосов
/ 08 июля 2019

У меня есть файл, и мне нужно увеличить цифру в файле и сохранить в другой файл, и он будет продолжать увеличиваться.Код, который я написал, абсолютно работает, за исключением одного условия.Файл2 должен увеличиваться на единицу и продолжает добавлять единицу, если последняя цифра существует в файле2

Последняя цифра файла2 (выходная) увеличивается только один раз, но должна увеличиваться до бесконечности до остановки выполнения

import re
import sys
import os
rx = r'(?<=:)(\d*)$'
rex = r'(?<=:)(\d+)$'
with open('file1','r') as fh:
    fh_n = fh.read()
    with open('file2', 'a+') as fw:
        x = re.sub(rx , lambda x: str(int(x.group(0)) + 1) if len(x.group(1)) else "0", fh_n, 1, re.M)
        fw.seek(0, os.SEEK_SET) 
#Error part is below    
        if x in fw.read():
           y = re.sub(rex , lambda x: str(int(x.group(0)) + 1) , x, 1, re.M)
           fw.seek(0, os.SEEK_END)  
           fw.write(y)
        else:
           fw.write(x)

file1

 firfox 5.1:
         chrome 5.0:

file2 (ожидается ниже)

  After 3 times execution


    firfox 5.1:0
          chrome 5.0:
    firfox 5.1:1
          chrome 5.0:
    firfox 5.1:2
          chrome 5.0:
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...