Обратите внимание, что при настройке списка sys.path в примерах выше были использованы литералы необрабатываемых строк (raw string): поскольку обратный слеш в строке Python обычно означает начало экранированной последовательности, пользователи Windows должны следить за тем, чтобы удваивать символы слеша при использовании в строках с путями к каталогам (например, в строке “C:\\dir” комбинация \\ в действительности является экранированной последовательностью, означающей символ \), или использовать константы необрабатываемых строк, чтобы иметь возможность вставлять символ обратного слеша без всяких ухищрений (например, r”C:\dir”).
При просмотре путей к каталогам в Windows (например, при выводе списка sys.path в интерактивной оболочке) Python выводит \\, как один символ \. Формально можно обойтись одним символом \, если за ним следует символ, не воспринимаемый Python как продолжение экранированной последовательности, но использовать удвоение и необрабатываемые строки обычно легче, чем запоминать таблицы экранированных последовательностей.
Обратите также внимание, что большинство библиотечных функций Python в качестве разделителей элементов путей к каталогам принимают как прямой (/), так и обратный (\) слеш, независимо от используемой платформы. Это значит, что / обычно действует и в Windows, что способствует созданию сценариев, переносимых на Unix. Описываемые далее в этой главе инструменты из модулей os и os.path также способствуют переносимости путей в сценариях.
Использованная литература:
Марк Лутц — Программирование на Python, 4-е издание, I том, 2011