Робота з файлами

Відкрита

1.1 Відкриття файлу

Працювати з файлами в Python — одне задоволення, оскільки це зроблено доволі просто та інтуїтивно. Ми зараз говоримо не про створення чи переміщення файлів на диску, а про читання та запис вмісту файлів.

Робота з вмістом файлу зазвичай відбувається за наступною схемою:

Відкриття файлу
Робота з даними файлу
Закриття файлу

Приклад читання всього вмісту файлу:

file = open('example.txt', 'r')
content = file.read()
print(content)
file.close()

Функція open використовується для відкриття файлу. Вона приймає два основних аргументи: ім'я файлу і режим доступу. Функція повертає об'єкт файлу, який потім можна використовувати для виконання операцій читання та запису.

Приклад:

file = open('example.txt', 'r')

Якщо вказано лише ім'я файлу, він буде шукатися в поточній робочій директорії програми. Якщо вказано повне ім'я файлу, то буде звернення за вказаним шляхом.

1.2 Режими доступу

Другий параметр у функції open() позначає режим роботи з файлом. Режими доступу визначають, які операції можна виконувати з файлом (читання, запис і т.д.).

Ось основні режими доступу:

  • Read — читання.
  • Write — запис.
  • Append — додавання.

Існує кілька варіацій цих режимів:

  • 'r': Відкриття файлу для читання (режим за замовчуванням). Файл повинен існувати.
  • 'w': Відкриття файлу для запису. Вміст файлу буде видалено. Якщо файл не існує, він буде створений.
  • 'a': Відкриття файлу для додавання. Дані будуть додані в кінець файлу. Якщо файл не існує, він буде створений.
  • 'r+': Відкриття файлу для читання та запису. Файл повинен існувати.
  • 'w+': Відкриття файлу для читання та запису. Вміст файлу буде видалено. Якщо файл не існує, він буде створений.
  • 'a+': Відкриття файлу для читання та додавання. Дані будуть додані в кінець файлу. Якщо файл не існує, він буде створений.

Приклад запису у файл:

Якщо ви хочете записати дані у файл, то просто вкажіть w у якості режиму доступу при відкритті файлу. Зверніть увагу, що весь старий вміст файлу буде видалено!

file = open('example.txt', 'w')
file.write("Hello, World!")
file.close()

Приклад додавання у файл:

Якщо ви не хочете видаляти вміст файлу, а просто бажаєте щось дописати в його кінець, то вам потрібно вказати a у якості режиму доступу до файлу.

file = open('example.txt', 'a')
file.write("\nAppended text.")
file.close()

Важливо! Якщо ви пишете у файл, і його ще не існує, то він буде створений автоматично. Але якщо ви спробуєте прочитати дані з неіснуючого файлу, виникне виняток.

1.3 Закриття файлу

Кожного разу, коли ви відкриваєте файл, операційна система перевіряє ваші права на доступ до файлу та позначає його як використовуваний вашою програмою. Для роботи з файлом виділяється спеціальний ресурс — handler.

Кількість handler'ів, які може отримати ваша програма, обмежено. Це означає, що ви можете тримати відкритими лише кілька сотень файлів одночасно. Здається, що це багато, але якщо ваша програма працює на сервері місяцями і щодня щось читає і пише у файли, то цей ліміт можна вибрати дуже швидко.

Тому після того як ви завершили роботу з файлом, його потрібно закрити — викликати метод close(). Таким чином, ви повідомляєте операційній системі, що більше не потребуєте цього файлу, і його handler вам не потрібен.

Закриття файлу

Після завершення роботи з файлом його необхідно закрити, щоб звільнити системні ресурси. Для цього використовується метод close().

file = open('example.txt', 'r')
# Виконання операцій з файлом
file.close()

Кожен файл, який ви відкрили для читання або запису, повинен бути закритий. Не забувайте викликати метод close().

2
Задача
Модуль 1: Python Core,  12 рівень0 лекція
Недоступна
Читання файлу.
Читання файлу.
2
Задача
Модуль 1: Python Core,  12 рівень0 лекція
Недоступна
Режими доступу
Режими доступу
Коментарі
  • популярні
  • нові
  • старі
Щоб залишити коментар, потрібно ввійти в систему
Для цієї сторінки немає коментарів.