Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


ПЗ-12 Использование файлов

1 Цель занятия изучить методику работы с файлами.

2 Краткие методические указания. Файлами называют последовательности данных, которые сохраняются на внешних носителях данных [1-157]. Доступ к этим данным позволяет прочитать данные из файла или записать данные в файл. Типичными файловыми устрйствами являтся жесткий диски, флеш память, лазерные диски и тому подобные устройства. Прежде в качестве внешних запоминающих устройств использовали магнитные ленты. Доступ к данным на этих устройствах реализовался последовательно. Для того, чтобы прочитать данные на ленте надо было перемотать ее в нужное место (прочитать предшествующие данные). Современные внешние устройства позволяют реализовать и произвольный доступ, но последовательный доступ для внешних устройств сохранен. Данные на внешних устройствах записаны порциями, которые размещаютса на носителе информации в файлах – именованных порциях данных. Каждый файл имеет имя, которое состоит из собственно имени и расширения имени, которое позволяет разделять файлы по типам данных. Имя файлу дается создателем файла в процессе создания файла, говорят открытия файла. После завершения работы с файлом его надо закрыть. Только после этого данные размещенные в файле окажутся на внешнем носителе. До этого работа с файлом может проводиться с использованием некоторого заменителя файла. Работа с файлами настолько унифицирована, что некоторые устройства, которые не являются устройствами хранения информации взаимодействуют с процессором как файлы – последовательно принимая потоки данных или передавая потоки данных. К таким устройствам относится консоль (клавиатура и дисплей). Клавиатура поставляет поток символов, а дисплей отображает на экране поток символов. Каналы связи принимают потоки данных для передачи или передают процессору полученные из канала данные. Эти потоки данных в консоли и каналах связи организованы как файлы. Поэтому важно изучить принципы работы с файлами. Последовательность операторов, показанная ниже создает файл

>>> f=open("data.txt","w")

>>> f.write("Этот текст запишем в файл")

>>> f.close()

>>>

с именем data.txt и записывает в него строку "Этот текст запишем в файл". Если после этого вновь открыть файл data.txt, то из него можно прочитать записанный текст.

>>> f=open("data.txt")

>>> f.read()

'Этот текст запишем в файл'

>>>

Файл data.txt размещается в той директории, в которой работает программа. Следует заметить, что в интерактивном режиме после выполнения чтения или записи файл закрывается. Файлы, по умолчанию, имеют текстовый формат [2]. Если к обозначению режима добавить букву b, то данные рассматриваются как двоичные коды, представленные байтами. В языке Питон записать строку в байтовом формате нельзя. Это демонстрирует следующий пример.

>>> f=open("data.txt","wb")

>>> f.write("Этот текст запишем в файл")

Traceback (most recent call last):

File "<pyshell#1>", line 1, in <module>

f.write("Этот текст запишем в файл")

TypeError: a bytes-like object is required, not 'str'

>>>

C другой стороны, сложные объекты Питона, такие как коллекции, трудно сохранять в текстовом формате [2]. Для записи и чтения коллекций нужно пользоваться средствами модуля pickle, который следует подключать к программе директивой import. Показанная ниже последовательность операторов, используя функции модуля pickle, записывает и считывает из файла элементы списка с данными разного типа:

>>> import pickle

>>> L=[23,2.3,'Это строка.',4+6j]

>>> f=open("Lst_dt.dt","wb")#Открываем бинарный файл на запись

>>> pickle.dump(L,f) #Сохраняем список L в файле Lst_dt.dt

>>> f.close()

>>> f=open("Lst_dt.dt","rb")#Открываем бинарный файл на чтение

>>> pickle.load(f)#Читаем список из файла Lst_dt.dt

[23, 2.3, 'Это строка.', (4+6j)]

>>>



<== предыдущая лекция | следующая лекция ==>
Правая половина сцены: берег, выжженный лес, небо и тучи, из-за которых выглядывает Бог. | Создание р-п переходов ионным легированием
Поделиться с друзьями:


Дата добавления: 2017-02-25; Мы поможем в написании ваших работ!; просмотров: 227 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Своим успехом я обязана тому, что никогда не оправдывалась и не принимала оправданий от других. © Флоренс Найтингейл
==> читать все изречения...

2396 - | 2210 -


© 2015-2025 lektsii.org - Контакты - Последнее добавление

Ген: 0.013 с.