Для создания новых файлов в Python используется функция `open()` с различными режимами открытия файла. Основная структура работы с файлами:
# Создание нового текстового файла
with open('новый_файл.txt', 'режим') as f:
pass # В этом примере файл будет пустым, так как мы ничего в него не записываем
Режимы работы с файлами в примерах
Режим | Описание |
---|---|
'r' |
Открытие файла для чтения. Файл должен существовать. |
'w' |
Открытие файла для записи. Если файл не существует, он будет создан. Если файл существует, его содержимое будет перезаписано. |
'a' |
Открытие файла для добавления (дописывания) в конец файла. Если файл не существует, он будет создан. |
'x' |
Открытие файла для эксклюзивного создания. Если файл с указанным именем уже существует, операция завершится ошибкой. |
'b' |
Дополнительный режим, который указывает, что файл открывается в бинарном режиме. Например, 'wb' для записи в бинарном режиме. |
'+' |
Дополнительный режим, который позволяет открывать файл как для чтения, так и для записи. Например, 'r+' или 'w+' . |
Чтение файла (
'r'
):with open('file.txt', 'r') as f:
content = f.read()
Запись в файл (
'w'
):with open('file.txt', 'w') as f:
f.write('Hello, World!')
Добавление в конец файла (
'a'
):with open('file.txt', 'a') as f:
f.write('\nNew line appended.')
Эксклюзивное создание файла (
'x'
):try:
with open('new_file.txt', 'x') as f:
f.write('Content for the new file.')
except FileExistsError:
print('Файл уже существует!')
Бинарный режим (
'rb'
, 'wb'
):with open('image.jpg', 'rb') as f:
image_data = f.read()
with open('copy_image.jpg', 'wb') as f:
f.write(image_data)
Чтение и запись (
'r+'
, 'w+'
):with open('file.txt', 'r+') as f:
content = f.read()
f.write('Additional text')
with open('new_file.txt', 'w+') as f:
f.write('Initial content')
f.seek(0) # Перемещаем указатель на начало файла
content = f.read()
Копирование файлов
Для копирования файлов в Python можно использовать различные подходы, например, функцию `shutil.copy()`. Пример:
import shutil
# Копирование файла
shutil.copy('исходный_файл.txt', 'новый_файл.txt')
Перемещение и переименование файлов
Для перемещения или переименования файлов используются функции `os.rename()` или `shutil.move()`. Пример:
import os
import shutil
# Переименование файла
os.rename('старое_имя.txt', 'новое_имя.txt')
# Перемещение файла
shutil.move('исходный_файл.txt', 'целевая_папка/новое_имя.txt')
Удаление файлов
Для удаления файлов в Python используется функция `os.remove()`. Пример:
import os
# Удаление файла
os.remove('файл_для_удаления.txt')
Проверка существования файла
Для проверки существования файла можно использовать функцию `os.path.exists()`.
import os.path
# Проверка существования файла
if os.path.exists('файл.txt'):
print('Файл существует')
else:
print('Файл не существует')
Поиск файлов по расширению или имени
Для поиска файлов в директории по расширению или имени можно использовать модуль `glob`. Пример поиска всех файлов с расширением ".txt":
import glob
# Поиск файлов с расширением ".txt"
txt_files = glob.glob('*.txt')
Получение информации о файле
Для получения информации о файле (например, размер, дата создания и другие атрибуты) можно использовать функции из модуля `os.path`.
import os.path
# Получение размера файла
size = os.path.getsize('файл.txt')
# Получение времени последнего доступа к файлу
atime = os.path.getatime('файл.txt')