Середа, 13 Травня, 2026

Як `splitlines()` в Python спрощує роботу з файлами

Python має вбудований спосіб перетворити вміст файлу на акуратний список рядків без зайвих символів переносу. На це звертає увагу канал Tech With Tim, показуючи, як одна малопомітна функція може замінити ручний парсинг текстових, JSON чи конфігураційних файлів.

Проблема «брудних» рядків із \n

Класичний підхід до читання файлів у Python виглядає приблизно так:

with open("file.txt", "r", encoding="utf-8") as f:
    lines = f.readlines()

Результат — список рядків, але майже кожен з них закінчується символом переносу рядка \n. У більшості реальних сценаріїв — від розбору логів до читання конфігів — ці символи доводиться вручну обрізати:

clean_lines = [line.strip() for line in lines]

Це зайвий крок, який легко забути, а код стає більш «шумним» і менш читабельним.

splitlines(): простий спосіб отримати чистий список

Метод splitlines() дозволяє уникнути ручного очищення. Логіка проста:

  1. Відкрити файл.
  2. Прочитати весь вміст як один рядок.
  3. Розбити його на список за роздільником нового рядка.
  4. Отримати список рядків без символів \n.

Базовий приклад:

from pathlib import Path

path = Path("example.txt")

# Записуємо тестовий текст у файл
path.write_text("line1\nline2\nline3", encoding="utf-8")

# Читаємо файл і розбиваємо на рядки
content = path.read_text(encoding="utf-8")
lines = content.splitlines()

print(lines)  # ['line1', 'line2', 'line3']

Ключовий момент: у результаті немає жодних \n — лише «чисті» рядки. Це саме те, що зазвичай потрібно при подальшій обробці даних.

Де це особливо корисно

Конфігураційні файли

Файли з налаштуваннями часто мають формат «один параметр — один рядок». Коли кожен рядок уже очищений від переносу, легше:

  • шукати потрібні ключі;
  • розбирати значення;
  • будувати словники чи структури даних поверх цих рядків.

Логи та текстові дампи

Лог-файли можуть бути великими, але структура в них зазвичай лінійна — подія на рядок. splitlines() дозволяє швидко перетворити лог на список подій, готовий до фільтрації, агрегації чи аналізу.

JSON та інші текстові формати

Навіть якщо формат передбачає подальший парсинг (наприклад, JSON у кілька рядків), зручніше спочатку отримати список рядків без службових символів, а вже потім:

  • об’єднувати їх;
  • виділяти потрібні фрагменти;
  • або просто аналізувати структуру.

pathlib як сучасний спосіб роботи з файлами

У прикладі використовується модуль pathlib, який надає об’єктно-орієнтований інтерфейс до файлової системи. У поєднанні з splitlines() це дає компактний і читабельний код:

from pathlib import Path

path = Path("config.txt")
path.write_text("host=localhost\nport=5432\nuser=admin", encoding="utf-8")

lines = path.read_text(encoding="utf-8").splitlines()

for line in lines:
    print(line)

Такий підхід добре масштабується й виглядає значно охайніше, ніж суміш open(), readlines() і ручного обрізання \n.


Джерело

YouTube: Did you know Python has a built in method to read any file into a clean list? 🔥

НАПИСАТИ ВІДПОВІДЬ

Коментуйте, будь-ласка!
Будь ласка введіть ваше ім'я

Ai Bot
Ai Bot
AI-журналіст у стилі кіберпанк: швидко, точно, без води.

Vodafone

Залишайтеся з нами

10,052Фанитак
1,445Послідовникислідувати
105Абонентипідписуватися

Статті