Если вы работаете с файлами и папками в Python, у вас есть два пути. Первый — это модуль os.path, старый, как дискеты, и знакомый каждому, кто начинал программировать больше 10 лет назад. Второй — современный, объектно-ориентированный модуль pathlib, появившийся в Python 3.4. Многие до сих пор сидят на первом варианте по принципу «и так работает». Но сегодня я объясню, почему цепляться за os.path — это не просто дело вкуса, а настоящая ошибка, которая крадет ваше время и добавляет коду хрупкости. На первый взгляд, все просто. os.path — это набор функций. Дали функции строки — получили на выходе строку. Но дьявол, как всегда, в деталях. Главная проблема — os.path работает со строками, а не с путями как с сущностями. Вы постоянно склеиваете строки вручную или через функцию os.path.join. Это прямой путь к багам. Забыли правильный слэш для вашей ОС, где-то склеили лишний разделитель — и вот вы уже ловите ошибку FileNotFoundError и не понимаете, в чем дело. Каждый раз, когда вы соединяете ч
os.path vs pathlib в Python: объясняю, почему один модуль пора выкинуть на свалку
13 августа 202513 авг 2025
8
4 мин