파이썬에서 폴더를 만들기
프로그래밍을 하다 보면 컴퓨터에 파일이나 폴더를 만들 일이 자주 생깁니다. 예를 들어, 수백 개의 폴더를 하나하나 만들기보다는 코드를 작성해 자동으로 만드는 것이 훨씬 편리합니다. 오늘은 파이썬으로 폴더를 어떻게 만드는지 차근차근 알려드릴게요.
파이썬에서는 기본으로 제공하는 os
와 pathlib
라이브러리를 사용해 간단하게 폴더를 만들 수 있습니다. 그럼, 이제 os
와 pathlib
를 활용해 폴더를 만들어보겠습니다!
파이썬 os
모듈로 폴더 만들기
파이썬의 os
모듈은 운영체제와 상호 작용할 수 있는 다양한 기능을 제공합니다. 그중 os.mkdir()
와 os.makedirs()
함수는 폴더를 만들 때 유용하게 사용할 수 있습니다.
예제 1: os.mkdir()
로 폴더 만들기
가장 간단한 방식으로 폴더를 만들어보겠습니다. 예를 들어, "new_folder"
라는 이름의 폴더를 현재 작업 디렉터리에 만들고 싶다면 다음과 같이 코드를 작성하면 됩니다.
import os
# 폴더 이름 정의
folder_name = "new_folder"
# 폴더 생성
os.mkdir(folder_name)
print(f"{folder_name} 폴더가 생성되었습니다.")
위 코드를 실행하면, 현재 작업 중인 폴더에 "new_folder"
라는 폴더가 생성됩니다. 폴더가 잘 만들어졌다는 메시지도 출력됩니다.
주의:
os.mkdir()
는 한 번에 하나의 폴더만 만들 수 있으며,
이미 존재하는 폴더 이름으로 만들려고 하면 오류가 발생합니다.
예제 2: os.makedirs()
로 하위 폴더까지 생성하기
os.makedirs()
함수는 중간에 폴더가 없더라도 하위 폴더까지 한 번에 만들어줍니다. 예를 들어, "parent/child/grandchild"
구조의 폴더를 만들고 싶다면 아래와 같이 작성할 수 있습니다.
import os
# 폴더 경로 정의
folder_path = "parent/child/grandchild"
# 중간 폴더 포함하여 폴더 생성
os.makedirs(folder_path)
print(f"{folder_path} 경로에 폴더가 생성되었습니다.")
위 코드를 실행하면 "parent"
폴더가 없더라도, "parent/child/grandchild"
경로가 모두 생성됩니다. 정말 편리하죠?
파이썬 pathlib
모듈로 폴더 만들기
pathlib
은 파이썬에서 경로와 관련된 작업을 쉽게 할 수 있도록 도와주는 모듈입니다. pathlib
의 Path
객체를 사용하면 더 간결하게 폴더를 생성할 수 있습니다.
예제 3: Path.mkdir()
로 폴더 생성하기
먼저 Path.mkdir()
메서드를 사용해 단일 폴더를 생성해보겠습니다. 다음 코드와 같이 작성할 수 있습니다.
from pathlib import Path
# 폴더 이름 정의
folder_path = Path("new_folder_with_pathlib")
# 폴더 생성
folder_path.mkdir()
print(f"{folder_path} 폴더가 생성되었습니다.")
Path
객체를 사용하면 os.mkdir()
보다 직관적으로 폴더를 생성할 수 있습니다. Path("폴더_이름")
과 같은 형태로 경로를 정의하고, .mkdir()
메서드로 폴더를 만듭니다.
예제 4: 하위 폴더까지 생성 (parents=True
옵션)
하위 폴더를 만들고 싶다면 parents=True
옵션을 추가하면 됩니다. 예를 들어, "parent_path/child_path"
구조의 폴더를 만들고 싶다면 아래와 같이 작성하세요.
from pathlib import Path
# 폴더 경로 정의
folder_path = Path("parent_path/child_path")
# 하위 폴더까지 포함하여 폴더 생성
folder_path.mkdir(parents=True)
print(f"{folder_path} 경로에 폴더가 생성되었습니다.")
이렇게 하면 "parent_path"
폴더가 없더라도 child_path
까지 한 번에 생성됩니다. parents=True
옵션을 사용하니 중간 경로까지 모두 만들어주는 것이 os.makedirs()
와 비슷하죠?
폴더가 이미 존재하는지 확인하기
폴더를 만들기 전에 같은 이름의 폴더가 있는지 확인하는 것이 좋습니다. 만약 이미 폴더가 존재한다면 오류가 발생할 수 있기 때문이죠. os.path.exists()
함수나 Path.exists()
메서드를 활용해 폴더의 존재 여부를 확인할 수 있습니다.
예제 5: 폴더가 이미 있는지 확인하기 (os.path.exists
)
import os
# 폴더 이름 정의
folder_name = "check_folder"
# 폴더가 있는지 확인하고 생성
if not os.path.exists(folder_name):
os.mkdir(folder_name)
print(f"{folder_name} 폴더가 생성되었습니다.")
else:
print(f"{folder_name} 폴더가 이미 존재합니다.")
예제 6: Path.exists()
로 폴더가 이미 있는지 확인하기
from pathlib import Path
# 폴더 경로 정의
folder_path = Path("check_folder_with_pathlib")
# 폴더가 있는지 확인하고 생성
if not folder_path.exists():
folder_path.mkdir()
print(f"{folder_path} 폴더가 생성되었습니다.")
else:
print(f"{folder_path} 폴더가 이미 존재합니다.")
정리하며
오늘은 파이썬으로 폴더를 생성하는 방법을 배워보았습니다. os
와 pathlib
모듈을 통해 쉽게 폴더를 만들 수 있었고, 중간 폴더까지 생성하는 방법과 폴더가 이미 존재하는지 확인하는 방법도 다뤘습니다.
파이썬으로 폴더를 생성하는 기본기를 익히면 많은 작업을 자동화할 수 있습니다. 더 복잡한 프로젝트에서도 매우 유용하게 활용될 수 있으니, 꼭 실습해 보시기 바랍니다!
'파이썬 문법' 카테고리의 다른 글
[Python] 파이썬 파일 읽기 open, readlines() vs read() (1) | 2024.11.01 |
---|