Как изменить и сохранить переменную при запуске
Как изменить переменную а объявленную вначале, закрыть идл и если запустить чтоб в а сохранилось переданное значение, такое возможно?
a = ()
def start():
b = 1 + 2
a = b
Ответы (2 шт):
Автор решения: Sergey
→ Ссылка
Сохранение/восстановление данных в разных сеансах работы
Для этого существует специальный пакет pickle у которого два метода:
- dump()
- load()
Пример использования:
import pickle
data = {
'a': [1, 2.0, 3, 4+6j],
'b': ("character string", b"byte string"),
'c': {None, True, False}
}
with open('data.pickle', 'wb') as f:
pickle.dump(data, f)
with open('data.pickle', 'rb') as f:
data_new = pickle.load(f)
print(data_new)
Для Вашего случая это может выглядеть так:
import pickle
a = ()
def start():
global a
b = 1 + 2
a = b
start()
print("До", a)
with open('data.pickle', 'wb') as f:
pickle.dump(a, f)
a = ()
with open('data.pickle', 'rb') as f:
a = pickle.load(f)
print("После", a)
Автор решения: Struckture
→ Ссылка
Можно сохранить переменную в текстовый файл, а потом считать его и записать в переменную.