Python의 경로에서 파일 이름을 얻는 방법
-
ntpath
라이브러리를 사용하여 경로에서 파일 이름 가져 오기 -
ntpath.basename()
을 사용하여 경로에서 파일 이름 가져 오기 -
Python은
os.path.basename()
을 사용하여 경로에서 파일 이름을 가져옵니다 -
Python은
os.path.split()
을 사용하여 경로에서 파일 이름을 가져옵니다
이 자습서에서는 Python의 경로에서 파일 이름을 가져 오는 방법을 소개합니다. 또한 특정 운영 체제와 관련된 개념을 더 자세히 설명하기 위해 몇 가지 예제 코드를 나열합니다.
ntpath
라이브러리를 사용하여 경로에서 파일 이름 가져 오기
경로를 정의하는 방법은 다를 수 있습니다. Windows의 파일 경로는 백 슬래시 또는 슬래시를 경로 구분자로 사용할 수 있습니다. 따라서ntpath
모듈은 모든 플랫폼의 모든 경로에서 작동합니다.
ntpath
라이브러리는basename
함수를 지원합니다. 이 함수는path
로 전달되고 실행 후ntpath.basename(path)
는 주어진path
에서 파일 이름을 반환합니다. 이 방법을 사용하는 기본 예는 다음과 같습니다.
import ntpath
print(ntpath.basename("usr/temp/new/sample"))
출력:
sample
ntpath.basename()
을 사용하여 경로에서 파일 이름 가져 오기
이 라이브러리는 Linux에서도 작동합니다. 그러나 Linux에서는 파일 이름에 백 슬래시가 포함될 수 있습니다. 따라서 Linux에서r'usr/xyz\python'
은 항상usr
폴더의xyz\python
파일을 참조합니다.
import ntpath
print(ntpath.basename("r'usr/xyz\python'"))
출력:
xyz\python
Windows에서usr
폴더의xyz
하위 폴더에있는python
파일명을 의미합니다. 경로에서 백 슬래시와 슬래시를 모두 사용할 때 사용중인 플랫폼을 알아야합니다. 그렇지 않으면 경로를 올바르게 해석하지 못할 수 있습니다.
os.path.basename()
을 사용하는 경로에서 파일 이름을 가져 오는 또 다른 방법이 있습니다.
Python은os.path.basename()
을 사용하여 경로에서 파일 이름을 가져옵니다
os.path
라이브러리에서 제공하는 함수를 사용하여 경로에서 파일 이름을 가져올 수도 있습니다. 함수는 파일 이름을 가져 오는 데 사용되는basename
입니다.
basename
은 매개 변수로path
를 취하고filename
을 반환합니다.
다음은 코드 예제입니다.
import os
print(os.path.basename("usr/temp/eng"))
출력:
eng
시스템이 POSIX이고 이중 슬래시가 포함 된 Windows 스타일 경로가os.path.basename()
에 전달되면 출력은 제공된 전체 경로가됩니다.
# in Linux
import os
print(os.path.basename("E:\\aws\\temp.jpg"))
출력:
E:\\aws\\temp.jpg
Python은os.path.split()
을 사용하여 경로에서 파일 이름을 가져옵니다
head
와 tail
이 개별적으로 필요한 경우os.path.split()
메서드를 사용할 수 있습니다. 이 메소드는 path
를 인수로 사용하고 경로의 head
와 tail
을 반환합니다.
예제 코드는 다음과 같습니다.
import os
head, tail = os.path.split("/Users/xyz/Downloads")
print(head)
print(tail)
출력:
/Users/xyz
Downloads
Syed Moiz is an experienced and versatile technical content creator. He is a computer scientist by profession. Having a sound grip on technical areas of programming languages, he is actively contributing to solving programming problems and training fledglings.
LinkedIn