Это файл конфигурации (.ini), который вы пытаетесь проанализировать? Формат выглядит подозрительно похожим, кроме как без раздела заголовка. Вы можете использовать configparser
, хотя это может добавить дополнительное пространство вокруг знака "=" (то есть "TargetName=D:\new
" против "TargetName = D:\new
"), но если эти изменения не имеют значения вы, используя configparser
, намного проще и менее подвержены ошибкам, чем пытаясь каждый раз анализировать его вручную.
TXT (INI) файл:
[section name]
FinishMessage=
TargetName=D:\something
FriendlyName=something
Код:
import sys
from configparser import SafeConfigParser
def main():
cp = SafeConfigParser()
cp.optionxform = str # Preserves case sensitivity
cp.readfp(open(sys.argv[1], 'r'))
section = 'section name'
options = {'TargetName': r'D:\new',
'FriendlyName': 'Big'}
for option, value in options.items():
cp.set(section, option, value)
cp.write(open(sys.argv[1], 'w'))
if __name__ == '__main__':
main()
TXT (INI) файл (после):
[section name]
FinishMessage =
TargetName = D:\new
FriendlyName = Big