Я сейчас читаю в файле, вносю в него несколько изменений, а затем пытаюсь сохранить его. Я могу распечатать чтение в консоль и увидеть изменения, но у меня возникают проблемы при попытке выяснить, как сохранить его после внесения изменений. Я пытался сделать f.write на чтение, но это не для записи, поэтому я не уверен, какие изменения я должен сделать, чтобы изменения могли быть записаны. Ниже мой код
import re
import os
directory = r'C:\file\directory\location'
for filename in os.scandir(directory):
with open(filename) as f:
view = f.read()
Tbl = re.search(r'\bidentifiers ([A-Za-z]+)', view).group(1)
ISN = Tbl+'.ISN_TYP_CD'
StringReplace = { '.BUSINESS_ID': '.HCE_ID',
'.class_of_trade_id as COT_ID' : '.COT_ID',
'\'CCN\' as ISN_TYP_CD' : ISN,
'PHX_Phoenix_PHX_OREF_BUS_DETL' : 'PHX_OREF_BUS_DETL',
'identifiers' : 'PHX_ORG_EXTRNL_ISN',
'.PRVDR_NUM_CCN' : '.PRVDR_NUM_CCN',
'.identifier_part1' : '.ISN',
'identifier_id IN (3)' : 'ISN_TYP_CD IN (\'CCN\')',
'identifier_id = 3' : 'ISN_TYP_CD IN (\'CCN\')',
'business_name' : 'PHX_ORG',
'.entity_id = .business_id' : '.HCE_ID = .HCE_ID'
}
for k, v in StringReplace.items():
view = view.replace(k, v)
view = f.write(re.sub(r'and \b\w+\.active_status = 1\s*\n', '', view, flags=re.IGNORECASE))
view = f.write(re.sub(r'and \b\w+\.Order_Type = \'PR\'\s*\n', '', view, flags=re.IGNORECASE))
print(filename)