Операции с файлами в Python

PythonPythonBeginner
Практиковаться сейчас

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

Добро пожаловать в у托邦ическое будущее, где человечество достигло нового уровня и построило обширные мегаполисы по всей вселенной. Вы находитесь в Целестии, современном космическом городе, вращающемся вокруг удалённой экзопланеты. В качестве одного из ведущих архитекторов Целестии вы используете передовые программы для моделирования, чтобы проектировать жилые пространства, которые являются одновременно функциональными и великолепными.

Ваша цель в этом лабораторном задании — использовать мощь Python для разработки набора инструментов, которые помогут управлять огромным количеством архитектурных планов и документов. Вы стремитесь автоматизировать скучные операции с файлами, связанные с поддержкой чертежей космического города, способствуя прогрессу и эффективности города.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL python(("Python")) -.-> python/FileHandlingGroup(["File Handling"]) python/FileHandlingGroup -.-> python/file_operations("File Operations") subgraph Lab Skills python/file_operations -.-> lab-271551{{"Операции с файлами в Python"}} end

Создание начального файла с чертежами

В этом шаге вы создадите начальный файл для своих планов, чтобы奠定ить основу для нового проекта. Это будет фундамент, на котором мы будем строить более сложные операции с файлами.

Напишем в этот файл некоторые базовые сведения с использованием Python. Откройте файл write_plan.py в ~/project:

## write_plan.py
plan_content = """Чертёж садов с кислородом в Целестии
Архитектор: [Ваше имя]
Последнее обновление: [Сегодняшняя дата]
Этот космический сад предназначен для обеспечения достаточного количества кислорода и пространства для отдыха жителям Целестии.
"""

with open('/home/labex/project/oxygen_gardens.txt', 'w') as file:
    file.write(plan_content)

Запустите этот скрипт из текущей рабочей директории ~/project:

python write_plan.py

Проверьте содержимое файла с помощью команды cat:

cat /home/labex/project/oxygen_gardens.txt

В терминале должно отобразиться содержимое, которое вы записали в файл:

Чертёж садов с кислородом в Целестии
Архитектор: [Ваше имя]
Последнее обновление: [Сегодняшняя дата]
Этот космический сад предназначен для обеспечения достаточного количества кислорода и пространства для отдыха жителям Целестии.

Перечисление всех файлов с чертежами и чтение их содержимого

В этом шаге мы разработаем скрипт для перечисления всех файлов с чертежами в директории и последующего чтения содержимого конкретного файла.

Предположим, что в вашей директории уже есть несколько файлов с чертежами. Откройте скрипт list_blueprints.py, который перечисляет все текстовые файлы с расширением .txt в директории /home/labex/project/.

## list_blueprints.py
import os

## Определите путь к директории с чертежами
blueprints_dir = '/home/labex/project/'

## Перечислите все файлы в директории
files = os.listdir(blueprints_dir)

## Отфильтруйте не-текстовые файлы и выведите оставшиеся файлы
print("Файлы с чертежами:")
for file in files:
    if file.endswith('.txt'):
        print(file)

## Предположим, что 'oxygen_gardens.txt' - это файл, который мы хотим прочитать
file_to_read = 'oxygen_gardens.txt'
with open(os.path.join(blueprints_dir, file_to_read), 'r') as file:
    print(f"\nСодержимое {file_to_read}:")
    print(file.read())

Запустите скрипт из терминала в директории проекта:

python list_blueprints.py

В выводе должны быть перечислены все файлы с чертежами, за ними следует содержимое oxygen_gardens.txt:

Файлы с чертежами:
oxygen_gardens.txt

Содержимое oxygen_gardens.txt:
Чертёж садов с кислородом в Целестии
Архитектор: [Ваше имя]
Последнее обновление: [Сегодняшняя дата]
Этот космический сад предназначен для обеспечения достаточного количества кислорода и пространства для отдыха жителям Целестии.

Резюме

В этом лабораторном задании вы узнали, как перемещаться по файлам и директориям, создавать и манипулировать ими с использованием Python в космическом мире. Автоматизируя эти операции с файлами, вы сделали важный шаг к созданию эффективной системы управления файлами для архитектурных проектов в Целестии. Способность обрабатывать операции с файлами с использованием Python - это ценный навык, который может быть применим в различных реальных приложениях, и ваше путешествие по этому лабораторному заданию укрепило эту способность.