Мне нужна простая функция для создания пути в Python, где родитель может или не может существовать.Эффективный способ создания рекурсивных путей Python
Из документации python os.makedirs не удастся, если один из родителей существует.
Я написал ниже метод, который работает, делая как можно больше подкаталогов.
Это выглядит эффективно?
def create_path(path):
import os.path as os_path
paths_to_create = []
while not os_path.lexists(path):
paths_to_create.insert(0, path)
head,tail = os_path.split(path)
if len(tail.strip())==0: # Just incase path ends with a/or \
path = head
head,tail = os_path.split(path)
path = head
for path in paths_to_create:
os.mkdir(path)
Является ли эти два предложения противоречат друг другу? – AlanS
@AlanSha: Да, они противоречат друг другу. Цитата из вопроса и содержит недоразумение. Мой комментарий затем пытается исправить это недоразумение и объяснить, что на самом деле происходит. – sth