Закажи экспресс-аудит своего дела онлайн всего за 199 ₽
и получи рекомендации по улучшению - Жми сюда !

Как записывать данные в файлы в Python: руководство для начинающих

Узнайте, как записывать, добавлять и сохранять текстовые, CSV и JSON файлы в Python, используя встроенные инструменты обработки файлов, которые работают «из коробки».

Как записывать данные в файлы в Python: руководство для начинающих

# Введение

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

В этом руководстве вы узнаете, как создавать текстовые файлы, записывать несколько строк, добавлять контент, работать с папками и сохранять данные в форматах CSV и JSON. Вы также узнаете о наиболее распространенных режимах работы с файлами, включая w, a, x и r, и когда следует использовать каждый из них.

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

# Создание вашего первого текстового файла

Простейший способ записи в файл — использовать встроенную функцию Python `open()`.

Режим w означает режим записи. Если файл не существует, Python создаст его. Если файл уже существует, Python заменит его существующее содержимое.

file = open(«message.txt», «w») file.write(«Hello, this is my first file written with Python.» file.close()

После выполнения этого кода Python создаст файл с именем message.txt в той же папке, что и ваш блокнот или скрипт.

Вы можете прочитать файл, чтобы проверить, что было сохранено.

файл = open(«message.txt», «r») содержимое = file.read() файл.close() print(содержимое)

Выход:

Здравствуйте, это мой первый файл, написанный на Python.

# Использование с функцией open(): Лучший способ

Хотя вы можете открывать и закрывать файлы вручную, рекомендуется использовать функцию open().

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

with open(«message.txt», «w») as file: file.write(«This file was written using with open().») with open(«message.txt», «r») as file: content = file.read() print(content)

Выход:

Этот файл был создан с использованием функции open().

Использование функции open() является наилучшей практикой, поскольку вам не нужно помнить о закрытии файла вручную.

# Понимание режимов файлов

При открытии файла параметр `mode` указывает Python, что вы хотите с ним сделать.

Режим Значение
в Запись в файл. Создает новый файл или перезаписывает существующий.
а Добавить в файл. Добавляет содержимое в конец файла, не удаляя существующее.
х Создайте новый файл. Если файл уже существует, создание файла завершится ошибкой.
р Чтение файла. Ошибка, если файл не существует.

Для записи файлов наиболее распространенными режимами являются w и a. Используйте w, когда хотите создать новый файл или заменить существующее содержимое. Используйте a, когда хотите добавить новое содержимое в конец файла.

# Написание нескольких строк

Для написания нескольких строк добавьте символ новой строки n.

with open(«notes.txt», «w») as file: file.write(«Строка 1: Изучаем Pythonn») file.write(«Строка 2: Практикуемся в работе с файламиn») file.write(«Строка 3: Создаем небольшие проектыn»)

Прочитайте файл:

with open(«notes.txt», «r») as file: print(file.read())

Выход:

Строка 1: Изучите Python. Строка 2: Практикуйтесь в работе с файлами. Строка 3: Создавайте небольшие проекты.

Также вы можете использовать функцию writelines() для записи списка строк в файл.

tasks = [ «Написать код на Pythonn», «Запустить ноутбукn», «Проверить выходной файлn» ] with open(«tasks.txt», «w») as file: file.writelines(tasks)

Прочитайте файл:

with open(«tasks.txt», «r») as file: print(file.read())

Выход:

Напишите код на Python. Запустите ноутбук. Проверьте выходной файл.

Важно помнить, что функция writelines() не добавляет переносы строк автоматически. Вам нужно добавить символ n самостоятельно.

# Добавление данных в файл

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

Для этого используйте режим добавления: a.

with open(«journal.txt», «w») as file: file.write(«День 1: Я начал изучать работу с файлами в Python.n») with open(«journal.txt», «a») as file: file.write(«День 2: Я научился добавлять текст в файл.n»)

Прочитайте файл:

with open(«journal.txt», «r») as file: print(file.read())

Выход:

День 1: Я начал изучать работу с файлами в Python. День 2: Я научился добавлять текст в файл.

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

# Безопасное создание файлов

Если вы хотите создать новый файл, но избежать перезаписи существующего, используйте режим x.

В этом режиме файл создается только в том случае, если он еще не существует. Если файл уже существует, Python генерирует исключение FileExistsError.

try: with open(«new_file.txt», «x») as file: file.write(«Этот файл был создан в режиме x.») print(«Файл успешно создан.») except FileExistsError: print(«Файл уже существует, поэтому Python его не перезаписал.»)

Если файл не существует, вы можете увидеть следующее:

Файл успешно создан.

Если файл уже существует, вы можете увидеть следующее:

Файл уже существует, поэтому Python его не перезаписал.

Это полезно, когда вы хотите защитить существующие файлы от случайной замены.

# Работа с путями к файлам

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

Если вы хотите сохранять файлы в определённую папку, вы можете использовать pathlib .

from pathlib import Path output_folder = Path(«output») output_folder.mkdir(exist_ok=True) file_path = output_folder / «summary.txt» with open(file_path, «w») as file: file.write(«Этот файл был сохранен в выходной папке.») print(f»Файл сохранен в: {file_path}»)

Выход:

Файл сохранен в: output/summary.txt

Теперь прочтите файл:

with open(«output/summary.txt», «r») as file: print(file.read())

Выход:

Этот файл был сохранен в выходной папке.

Вызов функции mkdir(exist_ok=True) создает папку, если она еще не существует. Если папка уже существует, Python не выдает ошибку.

# Запись CSV-файлов

CSV-файлы полезны для сохранения табличных данных, таких как строки и столбцы. Обычно их открывают в табличных редакторах, таких как Excel или Google Sheets.

Для записи CSV-файла в Python используйте модуль csv .

import csv students = [ [«Name», «Score»], [«Ayesha», 92], [«Bilal», 85], [«Sara», 88] ] with open(«students.csv», «w», newline=»») as file: writer = csv.writer(file) writer.writerows(students)

Прочитайте CSV-файл:

with open(«students.csv», «r») as file: print(file.read())

Выход:

Имя, Оценка Аиша, 92, Билал, 85, Сара, 88

Аргумент newline=»» помогает избежать лишних пустых строк при записи CSV-файлов, особенно в Windows.

# Запись JSON-файлов

JSON — ещё один распространённый формат для сохранения структурированных данных. Он часто используется для словарей, ответов API, файлов конфигурации и вложенных данных.

Для записи JSON-файлов в Python используйте модуль json .

import json profile = { «name»: «Ayesha», «role»: «Data Analyst», «skills»: [«Python», «SQL», «Excel»], «active»: True } with open(«profile.json», «w») as file: json.dump(profile, file, indent=4)

Прочитайте JSON-файл:

with open(«profile.json», «r») as file: print(file.read())

Выход:

{ «name»: «Ayesha», «role»: «Data Analyst», «skills»: [ «Python», «SQL», «Excel» ], «active»: true }

Аргумент indent=4 упрощает чтение JSON-файла.

# Распространенные ошибки новичков

Вот несколько распространенных ошибок, которые допускают новички при написании файлов на Python.

Ошибка Что происходит Как это исправить
Забыл закрыть файл Изменения могут быть сохранены некорректно. Использовать с функцией open()
Использование w вместо a Существующий контент удаляется. Используйте a при добавлении
Забывание n Текст расположен в одну строку. Добавить символы новой строки
Запись в отсутствующую папку Python выдает ошибку. Сначала создайте папку.
Запись нестроковых данных напрямую В Python может возникнуть ошибка TypeError. Преобразуйте значения в строки или используйте CSV/JSON.

# Завершение

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

Сохранение файлов помогает хранить журналы, сохранять результаты работы программ, создавать отчеты, хранить пользовательские данные и даже читать и записывать простые базы данных, используя такие форматы, как JSON. Самое приятное, что обработка файлов в Python является встроенной, быстрой и работает «из коробки».

Для большинства задач используйте функцию open(), поскольку она автоматически закрывает файл. Используйте w для записи или перезаписи файла, a для добавления нового содержимого и x для безопасного создания нового файла без замены существующего.

Абид Али Аван (@1abidaliawan) — сертифицированный специалист по анализу данных, увлеченный созданием моделей машинного обучения. В настоящее время он занимается созданием контента и написанием технических блогов о технологиях машинного обучения и анализа данных. Абид имеет степень магистра в области управления технологиями и степень бакалавра в области телекоммуникационной инженерии. Его цель — создать продукт на основе искусственного интеллекта с использованием графовой нейронной сети для студентов, страдающих психическими заболеваниями.

Источник: www.kdnuggets.com

✅ Найденные теги: Python, Данные, Записывать, Как, новости, Руководство, Файлы

Добавить комментарий

Новости других рубрик

Архив рубрики ~Лента новостей~: Как мы индексируем изображения для RAG Архив рубрики ~Лента новостей~: TikTok запускает TikTok Pro Events, приложение для освещения культурных событий, таких как чемпионат мира по футболу FIFA. Архив рубрики ~Лента новостей~: Введение в архитектуру ИИ-систем: как GPT-wrapper превращается в распределённую систему Архив рубрики ~Лента новостей~: Внедрение искусственного интеллекта в Walmart соответствует реалиям финансового баланса компании. Архив рубрики ~Лента новостей~: Можно ли остановить центры обработки данных, использующие искусственный интеллект? Комик Чарли Беренс считает, что да – программа «В США с Каем и Картером». Архив рубрики ~Лента новостей~: Компания Perplexity AI представила гибридную систему локально-облачного вывода на выставке Computex 2026. Архив рубрики ~Лента новостей~: Про «случайных» людей в ИТ Архив рубрики ~Лента новостей~: Ученые говорят, что огромная дамба, перекрывающая Берингов пролив, может замедлить последствия изменения климата