Работа с файлами
Файлы в Python-программах такие же, как и другие файлы на вашем ком-
пьютере: документы, изображения, музыка, игры и так далее. Вся инфор-
мация на компьютере хранится в файлах.
Давайте посмотрим, как с помощью встроенной функции open от-
крывать файлы и работать с ними. Сначала нужно создать для наших экс-
периментов новый файл.
Создания файла
Мы будем экспериментировать с текстовым файлом под названием
text.txt.Постарайтесь создать файл в терминале.
Открытие файла в Python
С помощью встроенной функции open можно открыть файл в оболочке
Python и вывести его содержимое на экран. Этой функции нужно сооб-
щить, где находится файл. Как это сделать, зависит от вашей операци-
онной системы. Ознакомьтесь с примером открытия файла в Windows,
а затем прочитайте параграфы, посвященные Mac и Ubuntu, если вы ис-
пользуете одну из этих систем.
text_file = open('text.txt')
<здесь будет текст, который вы напечатали в блокноте>
Запись в файл
Файловый объект, который возвращает функция open, предоставляет
и другие функции помимо read (читать). Начнем с того, что при вызове
open можно создать новый, пустой файл. Для этого вторым аргументом
следует передать строку 'w':
>>> text_file = open('text.txt', 'w')
Аргумент 'w' означает, что мы собираемся записывать данные в наш
файл, а не читать их.
Теперь можно записать в файл что-нибудь, воспользовавшись функ-
цией write:
>>> textfile = open('text.txt', 'w')
>>> textfile.write('это – тестовый файл')
20
И наконец, нужно сообщить Python, что мы закончили писать
в файл, — вызвать функцию close:
>>> textfile = open('text.txt', 'w')
>>> textfile.write('Что это – зеленое и крякает? Жабокряк!')
>>> text_file.close()
Если теперь открыть файл в текстовом редакторе, вы должны уви-
деть текст «Что это — зеленое и крякает? Жабокряк!». Также можно про-
читать файл в оболочке Python:
>>> textfile = open('text.txt')
>>> print(textfile.read())
Что это – зеленое и крякает? Жабокряк!
Задание:
Напишите программу для копирования файла. (Подсказка: нужно от-
крыть файл, который вы собираетесь скопировать, считать из него дан-
ные, создать новый файл-копию и записать туда считанные данные.)
Проверьте результат работы программы, напечатав содержимое файла-
копии на экране.