Форум сайта python.su
у меня такой код:
a=5 b=a+1 f=open('file.txt','w') f.write(b) input()
Офлайн
1. Интрукция write сохраняет только текстовые данные…
2. Необходимо закрывать файл после открытия…
Если Вы желаете сохранить не строковые переменные используйте модуль pickle или shelve…
import pickle a = [12, 11] # Сохранение file_from = open("text.txt", "wb") picle.dump(a, file_from) file_from.close() # Изъятие file_to = open("text.txt", "rb") c = pickle.load(file_to) file_to.close() print c raw_input("Please Enter to close")
Отредактировано 4kpt (Ноя. 18, 2012 13:32:53)
Офлайн
спасибо большое!
Офлайн
Если нужно хранить структурированные данные типа ключ: значение лучше подходит модуль shelve… Про него можно прочитать в книге Р.С. Сузи…
Офлайн
хорошо
Офлайн
Если не найдеш книгу, отпишись. Я приведу пример…
Офлайн
4kpt, я тут поискал про shelve. чот ничо путного не нашёл…
может приведёшь примерчик маленький?
Офлайн
Плохо искал, ну ладно…
Привожу пример из книги:
import shelve data = ("abc", 12) key = "key" filename = "polka.dat" d = shelve.open(filename) # открытие полки d[key] = data # сохранить данные под ключом data = d[key] # загрузить данные по ключу len(d) # получить количество объектов в полке d.sync() # запись изменений в БД на диске del d[key] # удалить ключ и значение flag = d.has_key(key) # проверка наличие ключа lst = d.keys() # список всех ключей d.close() # закрытие полки
Офлайн
да.. искать настроения нет. в компе во всё переигра всё пересмотрел и ещё на над записью числа в файл застрял.
за пример спасибо.
Офлайн
pellonf.write(b)
print(b, file=f)
print >>f, b
Отредактировано py.user.next (Ноя. 19, 2012 04:52:58)
Офлайн