Я добросовестно использовал os.path.sep вместо литерала '/'.Поэтому я с удивлением посмотрел на источник os.path.join сегодня и увидел его с использованием литерала.
Я понял, что на платформах Windows некоторые библиотечные подпрограммы более низкого уровня преобразуют '/' в '\' при вызове файловой системы или другого '/' с использованием функций ОС.
Безопасно ли простоиспользовать литерал, не ставя под угрозу переносимость в Windows?
def join(a, *p):
path = a
for b in p:
if b.startswith('/'):
path = b
elif path == '' or path.endswith('/'):
path += b
else:
path += '/' + b
return path