В Unix os.path.normpath объединяет несколько косых черт в отдельные , за исключением случаев, когда появляются ровно две косые черты, которые являются началом пути . Почему исключение?
Для иллюстрации я получаю следующие преобразования:
//double/slash/stays -> //double/slash/stays
/double/slash//gone// -> /double/slash/gone/
double//slash//gone/ -> double/slash/gone
///triple/slash/gone -> /triple/slash/gone
////quad/slash/gone -> /quad/slash/gone
Это кажется странным для меня. Я могу смутно представить, что это полезно для монтирования SMB или URL-адресов, но я не думаю, что меня это волнует. Есть ли какая-то скрытая мудрость в поведении Python, или я должен просто свернуть ведущую // себя?
[обновление]
Принимая во внимание ответ ниже, похоже, что лучше всего не свернуть //, а просто принять его или трактовать как ошибку.