Я вижу странное поведение при разборе общих путей (общие пути на сервере, например, \ storage \ Builds)
Я читаю текстовый файл, который содержит пути к каталогам, которые я хочу обработать в дальнейшем. Для этого я делаю так:
def toWin(path):
return path.replace("\\", "\\\\")
for line in open(fileName):
l = toWin(line).strip()
if os.path.isdir(l):
print l # os.listdir(l) etc..
Это работает для локальных каталогов, но не для путей, указанных в общей системе.
e.g.
E:\Test -- works
\\StorageMachine\Test -- fails [internally converts to \\\\StorageMachine\\Test]
\\StorageMachine\Test\ -- fails [internally converts to \\\\StorageMachine\\Test\\]
Но если я открою оболочку python, импортирую скрипт и вызову функцию с той же строкой пути, то это будет работать!
Кажется, что парсинг общих путей окон ведет себя по-разному в обоих случаях.
Есть идеи / предложения?