Получить значения из текста, увеличить их сохранить их в том же тексте
Я пытаюсь получить некоторые значения из текста, увеличить их (пока здесь все хорошо), а затем записать новые переменные в файл, но я не могу записать переменные в файл, хотя я изменил переменную в строке.. код
with open("setup.txt", "r") as f:
for i, line in enumerate(f):
str = line.split(",")
if i == 0:
minL = int(str[0])
maxL = int(str[1])
minL += 2
maxL += 2
elif i == 1:
minF = int(str[0])
maxF = int(str[1])
minF += 1
maxF += 1
minL = str(minL)
with open("setup.txt", "w") as f:
f.write(minL)
f.close()
TXT просто:
15, 25
2, 9
РЕДАКТИРОВАТЬ ********* Извините, я только что сделал ошибку, когда скопировал код, я уже поставил "w" для режима записи, но это не работает
ошибка
line 15, in <module>
minL = str(minL)
NameError: name 'minL' is not defined
но я определил minL
2 ответа
Решение
Я пока не могу комментировать.. 17
ваш ожидаемый результат?
Я скопировал и изменил ваш код:
with open("setup.txt", "r") as f:
for i, line in enumerate(f):
stri = line.split(",")
if i == 0:
minL = int(stri[0])
maxL = int(stri[1])
minL += 2
maxL += 2
elif i == 1:
minF = int(stri[0])
maxF = int(stri[1])
minF += 1
maxF += 1
minL = str(minL)
with open("setup.txt", "w") as f:
f.write(minL)
f.close()
Я получил ошибку с отступом (который я исправил) и изменил str = line.split(",")
в stri = line.split(",")
Открыть файл в режиме записи должно получиться
with open("setup.txt", "w") as f:
f.write(minL)
f.close()