Запись в CSV на Python: подробное руководство

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

  1. Использование csv.writer:
    Модуль csv в Python предоставляет встроенный класс csv.writer для записи данных в файлы CSV. Вот пример:
import csv
data = [
    ['Name', 'Age', 'City'],
    ['John Doe', 25, 'New York'],
    ['Jane Smith', 30, 'London'],
    ['Bob Johnson', 35, 'Paris']
]
filename = 'data.csv'
with open(filename, 'w', newline='') as file:
    writer = csv.writer(file)
    writer.writerows(data)
print(f"Data has been written to {filename} successfully.")
  1. Использование pandas.
    Pandas — это мощная библиотека манипулирования данными на Python. Он обеспечивает простой и эффективный способ записи данных в файлы CSV. Вот пример:
import pandas as pd
data = {
    'Name': ['John Doe', 'Jane Smith', 'Bob Johnson'],
    'Age': [25, 30, 35],
    'City': ['New York', 'London', 'Paris']
}
df = pd.DataFrame(data)
filename = 'data.csv'
df.to_csv(filename, index=False)
print(f"Data has been written to {filename} successfully.")
  1. Использование csv.DictWriter:
    Модуль csv также предоставляет класс csv.DictWriter, который позволяет записывать словари в файлы CSV. Вот пример:
import csv
data = [
    {'Name': 'John Doe', 'Age': 25, 'City': 'New York'},
    {'Name': 'Jane Smith', 'Age': 30, 'City': 'London'},
    {'Name': 'Bob Johnson', 'Age': 35, 'City': 'Paris'}
]
filename = 'data.csv'
fieldnames = ['Name', 'Age', 'City']
with open(filename, 'w', newline='') as file:
    writer = csv.DictWriter(file, fieldnames=fieldnames)
    writer.writeheader()
    writer.writerows(data)
print(f"Data has been written to {filename} successfully.")

В этой статье мы рассмотрели три различных метода записи данных в файлы CSV в Python. Мы рассмотрели класс csv.writer, библиотеку pandas и класс csv.DictWriter. Эти методы обеспечивают гибкость и простоту использования для обработки данных CSV в различных сценариях. Используя эти методы, вы можете эффективно хранить табличные данные в формате CSV и управлять ими.