Если с помощью функции dir() проверить модуль __builtins__, то можно увидеть, что данный модуль содержит объект file, который определяет несколько методов для работы с файлами системы, включая такие методы, как open(), read(), write() и close().
Перед тем как что-то читать из файла или записывать в него, первым делом его следует открыть, используя метод open(). Данный метод требует два строковых аргумента для указания имени и пути расположения файла в системе, а также одного из спецификаторов режима открытия файла.
Файловый режим |
Операция |
r |
Открыть для чтения существующий файл |
w |
Открыть существующий файл для записи. Создает новый файл, если он не существует, или открывает существующий файл и стирает все его содержимое |
a |
Режим добавления текста. Открывает или создает текстовый файл для записи в конец файла |
r+ |
Открыть текстовый файл для чтения или записи |
w+ |
Открыть текстовый файл для записи или чтения |
a+ |
Открыть или создать текстовый файл для чтения или записи в конец файла |
Если после любого из перечисленных выше режимов файлов добавлен символ b, то операция будет относиться не к текстовому, а к двоичному файлу. Например, rb или w+b. |
file = open('example.txt', 'w')
print('Имя файла:', file.name) #Имя файла: example.txt
print('Режим открытия файла:', file.mode) #Режим открытия файла: w
print('Доступен ли файл для чтения:', file.readable()) #Доступен ли файл для чтения: False
print('Доступен ли файл для записи:', file.writable()) #Доступен ли файл для записи: True
def get_status(f):
if (f.closed != False):
return 'Закрыт'
else:
return 'Открыт'
print('Статус файла:', get_status(file)) #Статус файла: Открыт
file.close()
print('Статус файла:', get_status(file)) #Статус файла: Закрыт
Если ваша программа пытается открыть несуществующий файл в режиме r, то интерпретатор сообщит об ошибке.