Форум сайта python.su
0
Здравствуйте, бегло ознакомился с синтаксисом Питона, а с программированием не ознакомился)). Помогите пожалуйста составить программу, которая открывает файл .TXT, который выглядит примерно так:
unit 12, 13, 14
unit2 13, 14 15
cost 2, 13, 15
cost 3, 144, 15
Нужно найти в этом файле все значения COST и заменить первую после пробела цифру на 1, т.е. строчка COST 2, 144, 15 превратилась в COST 1, 144, 15, и так со всеми COST. Получиться должно вот так:
unit 12, 13, 14
unit2 13, 14 15
cost 1, 13, 15
cost 1, 144, 15
Затем сохранить изменения в файле. Блин, это моя первая задачка, а я даже не знаю как к ней подойти(( Помогите пожалуйста. Открыть файл и найти слово COST я смогу, а вот заменить первую цифру после пробела - вообще не понимаю как это сделать.
Отредактировано raes121212 (Май 9, 2018 14:19:05)
Офлайн
76
res = a.split('cost ')[1].split(', ') res[0] = '1' result = 'cost ' + ', '.join(res) print(result)
Офлайн
857
>>> import io >>> >>> text = """\ ... unit 12, 13, 14 ... unit2 13, 14 15 ... cost 2, 13, 15 ... cost 3, 144, 15 ... """ >>> >>> stream = io.StringIO(text) >>> >>> import re >>> >>> def tr(s): ... return re.sub(r'^cost \d+', 'cost 1', s) ... >>> out = ''.join(map(tr, stream)) >>> print(out, end='') unit 12, 13, 14 unit2 13, 14 15 cost 1, 13, 15 cost 1, 144, 15 >>>
Отредактировано py.user.next (Май 10, 2018 01:47:31)
Офлайн