프로그래밍 언어/Python

Python의 mkdir -p 기능

Rateye 2021. 11. 12. 11:37
728x90
반응형
질문 : Python의 mkdir -p 기능

Python 내에서 쉘에서 mkdir -p 와 유사한 기능을 얻을 수있는 방법이 있습니까? 시스템 호출 이외의 솔루션을 찾고 있습니다. 코드가 20 줄 미만이라고 확신하고 누군가 이미 작성했는지 궁금합니다.

답변

Python ≥ 3.5의 경우 pathlib.Path.mkdir 사용하십시오.

import pathlib
pathlib.Path("/tmp/path/to/desired/directory").mkdir(parents=True, exist_ok=True)

 

exist_ok 매개 변수는 Python 3.5에서 추가되었습니다.


Python ≥ 3.2의 경우 os.makedirs 에는선택적인 세 번째 인수 인 exist_ok 가 있습니다.이 True mkdir -p 기능을 활성화합니다. mode 가 제공되고 기존 디렉토리가 의도 한 것과 다른 권한을 가지지 않는 한; 이 경우 OSError 가 발생합니다.

import os
os.makedirs("/tmp/path/to/desired/directory", exist_ok=True)

이전 버전의 Python의 경우 os.makedirs 를 사용하고 오류를 무시할 수 있습니다.

import errno    
import os

def mkdir_p(path):
    try:
        os.makedirs(path)
    except OSError as exc:  # Python ≥ 2.5
        if exc.errno == errno.EEXIST and os.path.isdir(path):
            pass
        # possibly handle other errno cases here, otherwise finally:
        else:
            raise
출처 : https://stackoverflow.com/questions/600268/mkdir-p-functionality-in-python
728x90
반응형