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

Мы просто и по делу рассказываем про ИИ-инструменты для работы: сравнения, пошаговые гайды, бесплатные альтернативы и реальные сценарии применения. Помогаем выбрать между ChatGPT, Gemini, Claude, локальными моделями и десятками узкоспециализированных сервисов — от дизайна и HR до аналитики и SEO. Меньше хайпа, больше практики и экономии времени каждый день.

pythonфайлыcsv

Работа с файлами — один из базовых навыков в Python. Она нужна для логов, конфигов, обмена данными, отчетов и автоматизации. Ниже — краткая и практичная шпаргалка по чтению и записи обычных файлов, CSV и JSON.

Чтение текстового файла

Самый безопасный способ — через with: файл закроется автоматически.

with open("data.txt", "r", encoding="utf-8") as f:
    text = f.read()
print(text)

Полезные варианты:

  • f.read() — прочитать весь файл
  • f.readline() — прочитать одну строку
  • f.readlines() — получить список строк
  • цикл for line in f: — удобно для больших файлов
with open("data.txt", "r", encoding="utf-8") as f:
    for line in f:
        print(line.strip())

Запись в файл

with open("output.txt", "w", encoding="utf-8") as f:
    f.write("Привет, Python!\n")

Режимы открытия:

  • "r" — чтение
  • "w" — перезапись файла
  • "a" — дозапись в конец
  • "x" — создать новый файл, если его нет

Пример дозаписи:

with open("log.txt", "a", encoding="utf-8") as f:
    f.write("Новая запись\n")

Работа с CSV

CSV часто используют для таблиц, выгрузок и аналитики. В Python для этого есть модуль csv.

Чтение CSV:

import csv

with open("users.csv", "r", encoding="utf-8", newline="") as f:
    reader = csv.reader(f)
    for row in reader:
        print(row)

Если нужны колонки по именам:

import csv

with open("users.csv", "r", encoding="utf-8", newline="") as f:
    reader = csv.DictReader(f)
    for row in reader:
        print(row["name"], row["email"])

Запись CSV:

import csv

rows = [
    ["name", "age"],
    ["Анна", 25],
    ["Иван", 30]
]

with open("users.csv", "w", encoding="utf-8", newline="") as f:
    writer = csv.writer(f)
    writer.writerows(rows)

Работа с JSON

JSON подходит для API, конфигов и хранения структурированных данных. Используется модуль json.

Запись JSON:

import json

data = {
    "name": "Анна",
    "age": 25,
    "skills": ["Python", "SQL"]
}

with open("user.json", "w", encoding="utf-8") as f:
    json.dump(data, f, ensure_ascii=False, indent=4)

Чтение JSON:

import json

with open("user.json", "r", encoding="utf-8") as f:
    data = json.load(f)

print(data["name"])

Полезные советы ⚙️

  • всегда указывайте encoding="utf-8"
  • для CSV добавляйте newline="", чтобы избежать пустых строк
  • для больших файлов читайте построчно, а не через read()
  • проверяйте существование файла и обрабатывайте исключения try/except

Что важно запомнить

  • with open(...) — стандарт для безопасной работы с файлами
  • csv — для табличных данных
  • json — для словарей, списков и обмена с API
  • правильный режим открытия файла экономит время и нервы

📌 Сохраняйте пост как мини-шпаргалку по Python-файлам.

И загляните в подборку каналов про IT — там много полезного по Python, автоматизации, backend и работе с данными.

🗣 Подборки каналов
🧠 Каталог ботов и приложений
🗺 Навигация

Читайте так же