[Python 일반] 파이썬에서 재귀적으로 깊은 계층적 디렉토리를 생성하기 위한 makedirs

존재하지 않는 디렉토리에 os.mkdir()을 사용하여 새 디렉토리를 생성할 때 오류가 발생했습니다.

os.mkdir()파이썬에서 디렉토리(폴더)를 생성할 때 사용하는 방법입니다. 존재하지 않는 디렉토리에 새 디렉토리를 생성하려고 하면 오류가 발생합니다.(FileNotFoundError)

import os

os.mkdir('not_exist_dir/new_dir')
# FileNotFoundError

os.madeirs()를 사용하여 재귀적으로 디렉토리 생성

os.mkdir() 대신 os.makedirs()를 사용하면 중간 디렉토리가 생성되므로 깊은 계층적 디렉토리를 재귀적으로 생성할 수 있습니다.

os.makedirs('not_exist_dir/new_dir')

이 예의 경우 모든 항목을 한 번에 생성합니다. 새 중간 디렉토리가 여러 개 있어도 괜찮습니다.

  • 중간 디렉토리:not_exist_dir
  • 최종 디렉토리:new_dir

단, 최종 디렉터리가 이미 존재하는 경우 오류가 발생합니다.(FileExistsError)

os.makedirs('exist_dir/exist_dir')
# FileExistsError

인수가 있는 경우 exist_ok

Python 3.2 이후에는 exist_ok 인수가 추가되었으며, exist_ok=True이면 끝 디렉터리가 이미 존재하더라도 오류가 발생하지 않습니다. 최종 디렉터리가 없으면 새 디렉터리가 생성되고 존재하면 아무 작업도 수행되지 않습니다. 미리 터미널 디렉토리의 존재를 확인할 필요가 없기 때문에 편리합니다.

경축! 아무것도 안하여 에스천사게임즈가 새로운 모습으로 재오픈 하였습니다.
어린이용이며, 설치가 필요없는 브라우저 게임입니다.
https://s1004games.com

os.makedirs('exist_dir/exist_dir', exist_ok=True)

exist_ok 인수가 누락된 경우

이전 버전의 Python이 있고 os.madeirs에 exist_ok 인수가 없는 경우 os.path.exists를 사용하여 끝 디렉터리가 있는지 여부를 확인한 다음 없는 경우에만 새 디렉터리를 만들 수 있습니다. 끝 디렉토리.

if not os.path.exists('exist_dir/exist_dir'):
    os.makedirs('exist_dir/exist_dir')

 

[출처] https://ko.from-locals.com/python-makedirs-exist-ok/

 

본 웹사이트는 광고를 포함하고 있습니다.
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.
번호 제목 글쓴이 날짜 조회 수
57 [python 인공지능] Deploy ML models with FastAPI, Docker, and Heroku | Tutorial 졸리운_곰 2025.07.08 471
56 [python 인공지능] [VSCode] VSCode에서 ipynb 파일을 HTML(PDF 등..)로 졸리운_곰 2025.05.27 289
55 [Python 인공지능] [파이썬을 이용한 한글 NLP] 03. 간단한 키워드 추출기 졸리운_곰 2025.01.29 466
54 [Python 인공지능] [ 한글 키워드 시각화 ] 파이썬 python 텍스트 마이닝 한글 ( 워드 클라우드 WordCloud, squrify 트리맵으로 빅데이터 마스터) file 졸리운_곰 2025.01.29 405
53 [Python 인공지능] 기계 학습의 A to Z : IPython notebook과 scikit-learn을 활용한 기계 학습 file 졸리운_곰 2024.08.10 537
52 [python] 인공지능 python : 한글 문서 자동 요약 - lexrank 졸리운_곰 2023.07.06 409
51 [python] 인공지능 katiehouse / django-scikit-learn-tutorial file 졸리운_곰 2023.06.03 667
50 [python] [Anaconda]가상환경 설치,삭제 file 졸리운_곰 2022.12.03 408
49 [python][머신러닝] Scikit-learn Tutorial: Machine Learning in Python file 졸리운_곰 2022.11.29 504
48 [python] 파이썬(sklearn) 사이킷런(sklearn) 기초 졸리운_곰 2022.08.20 324
47 [python] scikit-learn이란 file 졸리운_곰 2022.08.20 463
46 [anaconde3][python] Create environment for tensorflow 1.4 in Anaconda 3 졸리운_곰 2022.07.02 566
45 [python][인공지능] [TensorFlow] Anaconda 가상환경 이용하여 TensorFlow GPU 설치 졸리운_곰 2022.01.20 445
44 [Python 인공지능] TextRank 를 이용한 키워드 추출과 핵심 문장 추출 (구현과 실험) file 졸리운_곰 2021.11.22 598
43 [python][인공지능] FLASK를 이용하여 PYTHON에서 PYTORCH를 REST API로 배포하기 졸리운_곰 2021.03.20 365
42 [python 파이썬] Creating REST API for TensorFlow models file 졸리운_곰 2021.02.01 492
41 [python 파이썬 인공지능] Keras 모델을 REST API로 배포해보기 file 졸리운_곰 2021.02.01 411
40 [파이썬 머신러닝] Scikit-learn 기초 졸리운_곰 2020.01.31 581
39 파이썬으로 간단한 뉴럴 네트워크 만들기 How to Create a Simple Neural Network in Python file 졸리운_곰 2020.01.29 22645
38 Keras를 활용한 주식 가격 예측 file 졸리운_곰 2019.02.25 990
대표 김성준 주소 : 경기 용인 분당수지 U타워 등록번호 : 142-07-27414
통신판매업 신고 : 제2012-용인수지-0185호 출판업 신고 : 수지구청 제 123호 개인정보보호최고책임자 : 김성준 sjkim70@stechstar.com
대표전화 : 010-4589-2193 [fax] 02-6280-1294 COPYRIGHT(C) stechstar.com ALL RIGHTS RESERVED