목차
- os.path.exists() 함수 소개 및 인자 설명
- 파일 존재 확인 예제
- 디렉토리 존재 확인 예제
- 파일 또는 디렉토리 존재 여부에 따른 처리 방법 예제(isfile, isdir 활용)
- 파일 존재 확인과 파일 접근 권한 확인 예제(os.access 활용)
1. os.path.exists() 함수 소개 및 인자 설명
os.path.exists() 함수는 주어진 경로가 파일 또는 디렉토리에 존재하는지 확인하는 파이썬의 내장 함수입니다.
이 함수는 인자로 주어진 경로가 파일 또는 디렉토리의 실제 존재 여부를 확인하며,
해당 경로가 실제로 존재하면 True를 반환하고 존재하지 않으면 False를 반환합니다.
존재 여부를 확인할 때 절대 경로나 상대 경로 모두 사용할 수 있습니다.
2. 파일 존재 확인 예제
파일 존재 여부를 확인하는 예제를 살펴보겠습니다.
import os
# 파일 경로
file_path = "/tmp/test_text1.txt"
# 파일 존재 확인
if os.path.exists(file_path):
print("파일이 존재합니다.")
else:
print("파일이 존재하지 않습니다.")
위 예제에서는 "/tmp/test_text1.txt" 경로의 파일 존재 여부를 확인하고 결과를 출력합니다.
3. 디렉토리 존재 확인 예제
디렉토리 존재 여부를 확인하는 예제를 살펴보겠습니다.
import os
# 디렉토리 경로
dir_path = "/tmp"
# 디렉토리 존재 확인
if os.path.exists(dir_path):
print("디렉토리가 존재합니다.")
else:
print("디렉토리가 존재하지 않습니다.")
위 예제에서는 "/tmp" 경로의 디렉토리 존재 여부를 확인하고 결과를 출력합니다.
4. 파일 또는 디렉토리 존재 여부에 따른 처리 방법 예제(isfile, isdir 활용)
파일 또는 디렉토리의 존재 여부에 따라 다른 동작을 수행하는 예제를 살펴보겠습니다.
import os
# 파일 또는 디렉토리 경로
path = "/tmp/test_text2.txt"
# 파일 또는 디렉토리 존재 확인
if os.path.exists(path):
if os.path.isfile(path):
print("파일이 존재합니다.")
# 파일에 대한 처리 로직
elif os.path.isdir(path):
print("디렉토리가 존재합니다.")
# 디렉토리에 대한 처리 로직
else:
print("파일 또는 디렉토리가 존재하지 않습니다.")
위 예제에서는 주어진 경로에 대해 파일 또는 디렉토리의 존재 여부를 확인하고, 존재하는 경우 해당 유형에 따라 다른 동작을 수행합니다.
5. 파일 존재 확인과 파일 접근 권한 확인 예제(os.access 활용)
파일 존재 여부뿐만 아니라 파일에 대한 접근 권한 확인도 중요합니다. 파일 존재 여부를 확인하는 동시에 파일의 읽기, 쓰기, 실행 등의 권한을 확인할 수 있습니다.
import os
# 파일 경로
file_path = "/tmp/test_text1.txt"
# 파일 존재 및 접근 권한 확인
if os.path.exists(file_path):
if os.access(file_path, os.R_OK):
print("파일이 존재하며 읽기 권한이 있습니다.")
# 파일 읽기 로직
else:
print("파일이 존재하지만 읽기 권한이 없습니다.")
else:
print("파일이 존재하지 않습니다.")
위 예제에서는 "/tmp/test_text1.txt" 파일의 존재 여부를 확인하고 읽기 권한이 있는지 확인합니다.
파일에 대한 접근 권한 확인은 os.access() 함수를 사용하며, 인자로 파일 경로와 권한을 나타내는 상수를 전달합니다.
결론
이상으로 파이썬에서 os.path.exists() 함수를 사용하여 파일 또는 디렉토리의 존재 여부를 확인하는 방법에 대해 알아보았습니다.