Работа с файлами на Python: чтение и запись

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

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

Введение

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

Присоединяйтесь к Алярику в его ледяной студии, когда он узнает, как использовать Python для чтения и записи в файлы. Ваш objetivo — помочь ему создать цифровой портфолио, которое он сможет гордо представить на Экспо.

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


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL python(("Python")) -.-> python/FileHandlingGroup(["File Handling"]) python/FileHandlingGroup -.-> python/file_reading_writing("Reading and Writing Files") subgraph Lab Skills python/file_reading_writing -.-> lab-271552{{"Работа с файлами на Python: чтение и запись"}} end

Создание файла каталога

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

  1. Напишите следующий код на Python в файле /home/labex/project/create_catalogue.py и сохраните его:
## create_catalogue.py
filename = '/home/labex/project/sculpture_catalogue.txt'

## Используем 'a', чтобы добавлять в файл, если он существует, или создавать новый, если он не существует
with open(filename, 'a') as file:
      pass  ## Это создаст пустой файл, если он не существует

print(f"Каталог файл '{filename}' готов.")
  1. Запустите скрипт с использованием Python:
python3 ~/project/create_catalogue.py

Вы должны увидеть вывод, подтверждающий, что каталог файл готов:

Каталог файл '/home/labex/project/sculpture_catalogue.txt' готов.

Запись записей о скульптурах в каталог

Теперь, когда Алярик готов с файлом каталога, настало время добавить несколько записей. Мы напишем функцию на Python, чтобы включать новую скульптуру каждый раз, когда он ее завершает.

  1. Откройте скрипт под названием add_sculpture.py в ~/project:
## add_sculpture.py
def add_sculpture(name, artist, date, material, catalogue_file='sculpture_catalogue.txt'):
      entry = f"{name}, Created by {artist}, Date: {date}, Material: {material}\n"
      with open(catalogue_file, 'a') as file:
         file.write(entry)

## Пример использования:
add_sculpture('Frozen Swan', 'Alaric', '2023-01-15', 'Ice')
  1. Пусть Алярик добавит запись о "Замороженном лебеде" путем запуска скрипта:
python3 ~/project/add_sculpture.py

Для подтверждения того, что запись была добавлена, вы можете проверить содержимое файла с помощью команды cat:

cat ~/project/sculpture_catalogue.txt

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

Frozen Swan, Created by Alaric, Date: 2023-01-15, Material: Ice

Чтение из каталога

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

  1. Откройте скрипт под названием read_catalogue.py в ~/project.
  2. Напишите функцию на Python для чтения записей из каталога:
## read_catalogue.py
def read_catalogue(catalogue_file='sculpture_catalogue.txt'):
      with open(catalogue_file, 'r') as file:
         for line in file:
            print(line.strip())

## Вызовите функцию для чтения и вывода каталога
read_catalogue()
  1. Запустите скрипт с использованием Python, чтобы отобразить каталог в терминале:
python3 ~/project/read_catalogue.py

Алярик должен быть able видеть все свои скульптуры, отображенные на консоли:

Frozen Swan, Created by Alaric, Date: 2023-01-15, Material: Ice

Резюме

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

Этот практический опыт не только укрепил наши способности к манипуляции с файлами, но и запечатл в нашей памяти радость от вырезания цифровых данных в виде полезных и информативных Python-скриптов.

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