<aside>
💡 pathlib 모듈은 경로를 객체로 다룸으로써 보다 간결하고 편리하게 파일과 폴더에 관련된 작업을 할 수 있도록 도와줍니다.
</aside>
from pathlib import Path
# 현재 작업 디렉토리 경로 객체 생성
current_dir = Path('.')
# 절대 경로 반환
abs_current_dir = current_dir.absolute()
res_current_dir = current_dir.resolve()
<aside> ❓ 파이썬의 pathlib 모듈에서 absolute와 resolve 메소드의 차이는 뭐야?
</aside>
# 홈 디렉토리 반환
home_dir = Path.home()
# 현재 디렉토리 내 항목들
all_files_curr = [e for e in current_dir.iterdir()]
all_files_home = [e for e in home_dir.iterdir()]
# 특정 파일의 경로 작성 및 존재 여부 확인
tiger = current_dir / "animal" / "Tiger.txt"
tiger_exists = tiger.exists()
# 파일 삭제 (디버깅이 완료되어야 진행됨)
tiger.unlink(missing_ok=True) # missing_ok : 없을 시 오류 반환 X
lion = current_dir / "animal" / "Lion.txt"
# 파일이 없을 시 생성
lion.touch()
# 파일의 텍스트 작성
lion.write_text(
"사자는 크고 강력한 고양잇과 동물로, 수컷의 갈기가 특징입니다.",
"UTF-8"
)
# 부모 폴더 조회
animal = lion.parent
# 파일 또는 폴더인지 여부
lion_is_file, lion_is_dir = lion.is_file(), lion.is_dir()
animal_is_file, animal_is_dir = animal.is_file(), animal.is_dir()