프로그래밍/Python

[Python] 파일 경로 설정

슬기나무 2021. 6. 14. 22:28
반응형

이번 포스팅에서는 파일 경로 설정에 대해 알아보겠습니다.

 

 경로 설정

파일을 읽고 쓰려면 우선 원하는 경로를 지정할 수 있어야 합니다.

 

그런데 윈도우, Mac os, 리눅스 등 각 운영체제에서는

 

경로를 지정할 때 구분하는 기호를 쓰는데

 

윈도우에선 백슬래시(\)를 사용하지만, Mac os에서는 슬래시(/)를 사용합니다.

 

따라서 경로를 지정하려면 운영체제에 따라 다르게 처리해주어야 합니다.

 

이럴 때에 유용하게 쓸 수 있는 함수가 있는데요.

 

바로 os.path.join() 함수입니다.

 

함수 안에 경로의 개별 폴더 이름을 지정하면 해당 경로를

 

각 운영체제에 맞는 구분 기호를 사용하여 생성해줍니다.

import os
print(os.path.join('user','Desktop','Python'))

저는 맥북을 사용 중이기 때문에 경로 구분 기호로 슬래시(/)가 표시되네요.

 

윈도우였다면 아마 백슬래시(\)가 표기되었을 겁니다.

 

 현재 디렉토리 경로

현재 작업하고 있는 디렉토리의 경로는 os.getcwd() 함수로 얻을 수 있습니다.

import os
print(os.getcwd())

만약 작업 중인 디렉토리를 변경하고 싶다면 os.chdir() 함수로 바꿀 수도 있습니다.

import os
print(os.getcwd())
os.chdir('/' + os.path.join('Users','sgyoon','Desktop','Python','Practice'))
print(os.getcwd())

위 코드를 실행한 결과는 아래와 같습니다.

방금 경로를 설정하기 위해 사용했던 os.path.join()함수를 사용하여 경로를 지정하고,

 

os.chdir()함수를 사용하여 지정한 경로로 작업 디렉토리를 변경했습니다.

 

만약 존재하지 않는 디렉토리로 변경을 하게 되면 오류가 발생합니다.

 

 특정 디렉토리에 폴더 만들기

존재하지 않는 디렉토리로 작업 디렉토리를 변경하면

 

오류가 발생한다고 말씀드렸었습니다.

 

그런데 난 꼭 그 이름을 가진 디렉토리로 변경을 해줘야겠다! 라고 하면

 

그럴 땐 폴더를 만들어줘버리면 되겠죠?

 

이 때 쓰는 함수가 os.makedirs()입니다.

import os
print(os.makedirs(os.getcwd()+'/Test1/Test2/Test3'))

위 코드를 실행한 결과는 아래와 같습니다.

os.makedirs() 함수의 경우 생성한 경로를 반환해주진 않는 모양이네요.

 

이 함수의 특징은 매개변수로 입력한 경로의 폴더를 모두 생성한다는 점입니다.

 

즉, 어떤 이름을 입력하더라도 그 이름을 가진 폴더를 경로 상에 생성합니다.

 

 

여기까지 경로 설정하는 방법에 대해 알아보았습니다.

반응형

'프로그래밍 > Python' 카테고리의 다른 글

[Python] str.split() 메서드  (0) 2022.12.20
[Python] print() 함수  (0) 2022.11.01
[Python] 문자열 메소드  (0) 2021.06.12
[Python] 문자열 입력 방법  (0) 2021.06.12
[Python] 데이터 유형: 사전(Dictionary)  (0) 2021.06.10