Check

Чтение и запись CSV-файла

Python Middle VK 01.01.2025
Реализуйте две функции: 1. `read_users_csv(path: str) -> list[dict]` — читает CSV-файл с колонками `id,name,email` и возвращает список словарей. 2. `write_users_csv(path: str, users: list[dict])` — записывает список словарей в CSV-файл с теми же колонками. Можно использовать модуль `csv` стандартной библиотеки.
Ответы
Решение 1
```python import csv from typing import List, Dict def read_users_csv(path: str) -> List[Dict[str, str]]: with open(path, newline="", encoding="utf-8") as f: reader = csv.DictReader(f) return list(reader) def write_users_csv(path: str, users: List[Dict[str, str]]) -> None: if not users: # можно создать пустой файл или ничего не делать with open(path, "w", newline="", encoding="utf-8") as f: pass return fieldnames = ["id", "name", "email"] with open(path, "w", newline="", encoding="utf-8") as f: writer = csv.DictWriter(f, fieldnames=fieldnames) writer.writeheader() for user in users: writer.writerow({fn: user.get(fn, "") for fn in fieldnames}) ```