Как мне добавить другую переменную к нужной строке в текстовом файле?

Как добавить значение переменной a к числу, которое находится рядом с переменной s равной значению переменной spoilers, чтобы заменить это число 90 на 100 в файле file.txt?
  • 12 ноября 2023 г. 14:29
Ответы на вопрос 2
Чтобы добавить значение переменной `a` к числу, которое находится рядом с переменной `s` в текстовом файле и заменить это число на 100, можно воспользоваться следующим кодом на языке Python:

```python
s = "spoilers"
a = 10

# Открываем файл в режиме чтения и записи
with open("file.txt", "r+") as file:
    # Читаем содержимое файла
    lines = file.readlines()

    # Проходим по каждой строке
    for i, line in enumerate(lines):
        # Разбиваем строку на отдельные слова
        words = line.split()

        # Ищем слово, равное значению переменной s
        if s in words:
            # Находим индекс числа, которое находится рядом с переменной s
            index = words.index(s) + 1
            
            # Прибавляем значение переменной a к найденному числу
            words[index] = str(int(words[index]) + a)

            # Заменяем строку в списке lines на строку с обновленным числом
            lines[i] = " ".join(words) + "\n"

    # Курсор устанавливаем в начало файла для перезаписи содержимого
    file.seek(0)
    
    # Пишем обновленные строки в файл
    file.writelines(lines)
```

В результате, число 90 будет заменено на 100 (если оно находится рядом со словом `spoilers`) в файле `file.txt`.
Откройте исходный файл с помощью функции open() и создайте еще один временный файл. Затем в цикле читайте строки из исходного файла с помощью функции readline() и разделите их на части, используя пробел как разделитель с помощью метода split(). Если первая часть строки не равна 's', то запишите строку во второй файл без изменений. Если первая часть строки равна 's', то измените нужные вам части строки, сформируйте новую строку и запишите ее во второй файл. Когда вы пройдетесь по всем строкам исходного файла, закройте оба файла. Затем используйте функцию os.replace(), чтобы заменить первый (исходный) файл вторым (измененным).
Похожие вопросы