Я бы предложил использовать модуль pickle вместо текстового файла:
Сохранение массива:
import pickle as pkl
arr = [...]
with open('save.pkl', 'wb') as f:
pkl.dump(arr, f)
Повторное открытие:
with open('save.pkl', 'rb') as f:
arr = pkl.load(f)
Если вы действительно хотите использовать текстовый файл, вы можете использовать literal_eval()
из ast
, чтобы изменить текст в массив:
from ast import literal_eval
with open('mydata.txt') as f:
arr = literal_eval(f.read())
А затем изменив массив:
with open('mydata.txt', 'w+') as f:
f.write(str(arr))