Appia의 IT세상

파이썬[Python] 032 디렉토리(Directory) 확인 및 변경/절대주소/ 상대 주소 사용법 본문

Python/Python 응용

파이썬[Python] 032 디렉토리(Directory) 확인 및 변경/절대주소/ 상대 주소 사용법

Appia 2020. 1. 6. 07:40
반응형

이번 포스팅은 파일 입출력과 매우 연관이 있는 포스팅입니다. 오늘은 크게 2가지 부분에 대해서 이야기를 하고자 합니다. 우선, 현재 디렉토리(Directory) 확인 및 변경하는 방법에 대해서 이야기 하고자 합니다. 또한, 관련해서 절대Path 및 상대 Path를 사용하는 방법에 대해서 이야기 해보고자 합니다. 

 

디렉토리(Directory) 확인 방법 

우선 현재 디렉토리(Directory)에 대해서 확인 하는 방법에 대해서 이야기 하겠습니다. 우선 관련해서 os 모듈을 사용하셔야 합니다. 그리고 os모듈 중 getcwd()를 사용해야 합니다. 

import os
print(os.getcwd())

다음과 같은 명령어로 현재 디렉토리(Directory)를 확인할 수 있습니다. 저의 경우 다음과 같은 결과가 나올 것입니다. 

C:\Users\Bens\PycharmProjects\Blogger

 

디렉토리(Directory) 변경 방법 

앞서서, 현재 디렉토리(Directory)를 확인해 보는 방법을 봤다면, 이제는디렉토리(Directory)를 변경하는 방법에 대해서 살펴보겠습니다. 기본적으로 chdir()메쏘드를 사용합니다. 

import os
print(os.getcwd())
os.chdir('D:\Data')
print(os.getcwd())

그럼 'D:\Data'로 현재 디렉토리(Directory)가 변경이 될것입다. 실행시에 다음과 같은 결과가 나올 것입니다. 

C:\Users\Bens\PycharmProjects\Blogger
D:\Data

단, 한가지 조심해야할 것이 있습니다. 만약 바꾸고자 하는 Directory가 존재하지 않는다면, 다음과 같은 에러 메시지가 나타날 것입니다. 

Traceback (most recent call last):
  File "C:/Users/Bens/PycharmProjects/Blogger/RelativePath.py", line 4, in <module>
    os.chdir('D:\Data123')
FileNotFoundError: [WinError 2] 지정된 파일을 찾을 수 없습니다: 'D:\\Data123'

 

절대 주소 vs 상대 주소 

현재 디렉토리(Directory)를 'D:\Data'라고 가정하겠습니다. 이를 가정했을 때와 상대 주소와 절대 주소를 다음과 같이 표현할 수 있습니다. 

상대 주소  절대 주소 
..\ D:\
.\ D:\Data
.\Data1 D:\Data\Data1
.\Data1\data.txt D:\Data\Data1\data.txtg

상대 주소 / 절대 주소 사용법 

먼저 다음 사용시에 크게 3가지 Method가 가장 많이 사용됩니다. 

 

os.path.abspath(path)

path에 대한 절대 주소를 반환 해줍니다. 

os.path.isabs(path)

현재 인자값으로 입력 받은 path가 절대 주소인지 확인해줍니다. 

os.path.relpath(path,start)

두개의 인자 값으로 받은 path를 바탕으로 relative path(상대주소)를 반환 해줍니다. 

 

다음 예시를 살펴 보겠습니다. 

import os
print(os.path.abspath('.'))
print(os.path.abspath('.\\Scripts'))
print(os.path.isabs('.'))
print(os.path.isabs(os.path.abspath('.')))
print(os.path.relpath('C:\\Windows', 'C:\\'))
print(os.path.relpath('C:\\Windows', 'C:\\Data\\data1'))

위의 예시를 실행하면 다음과 같은 결과가 나옵니다. 

C:\Users\Bens\PycharmProjects\Blogger
C:\Users\Bens\PycharmProjects\Blogger\Scripts
False
True
Windows
..\..\Windows

 

 

이번 포스팅은 디렉토리(Directory) 확인 및 변경하는 방법에 대해서 살펴봤습니다. 이번 포스팅은 파일 입출력과 관련해서 매우 많이 사용이 됩니다. 물론, 다른 메쏘드와 함께 사용하면 더욱 좋은 효과가 나타날 것이라고 생각합니다. 혹 궁금하신거나 문의 사항 있으시면 언제든지 댓글 및 방명록에 글 남겨주시길 바랍니다. 

반응형
Comments