OS 모듈은 상위 디렉토리를 가져오는 다양한 방법을 제공합니다. 몇 가지 방법:
os.path 사용. abspath()
os.path.abspath()
는 상위 디렉토리를 가져오는 데 사용할 수 있습니다. 이 방법은 경로의 정규화된 버전을 가져오는 데 사용됩니다. 이 기능에는 os.path.join( ()
및 os.pardir()
.os.path.join ( ()
Python os.path.join ( ()
하나 이상의 경로 구성 요소를 결합합니다. 이 메서드는 다양한 경로 구성 요소를 정확히 하나로 연결합니다. (' / ')
마지막 경로 구성 요소를 제외하고 비어 있지 않은 각 부분 뒤의 디렉토리 구분 기호. 결합할 경로의 마지막 구성 요소가 비어 있으면 ( ' / ')
디렉토리 구분자는 끝에 위치합니다.
구문: os.path.abspath(경로)
매개변수:
경로: 파일 시스템 경로를 나타내는 경로와 유사한 개체입니다.반환 유형: 경로의 정규화된 버전인 문자열을 반환합니다.
예:
# 부모를 가져오는 Python 프로그램
# 디렉토리
가져오기
os
# 현재 디렉토리 가져오기 < /코드>
<코드 클래스 = "일반"> 경로 <코드 클래스 = "키워드"> = <코드 클래스 = "일반"> os.getcwd()
인쇄
(
"현재 디렉토리"
, cwd)
# 상위 디렉토리 출력
인쇄
(os.path.abspath ( < a href="https://python.engineering/python-os-path-join-method/">os.path.join ((경로, os.pardir))
출력:
os.path.dirname사용 a> ()
os.path.dirname ()
Python에서 디렉토리 이름을 가져오는 데 사용됩니다. 주어진 경로.
매개변수:
경로: 파일 시스템 경로를 나타내는 경로와 유사한 개체입니다.반환 유형: 이 메소드는 지정된 경로의 디렉토리 이름을 나타내는 문자열 값을 반환합니다.
예:
# 부모를 가져오는 Python 프로그램
# 디렉토리
가져오기
<코드 클래스 = " plain"> os
# 현재 디렉토리 가져오기
경로
<코드 클래스 = "키워드"> = <코드 클래스 = "일반"> os.getcwd()
<코드 클래스 = "함수"> print (
"Cu rrent 디렉토리 "
, 경로)
인쇄
( )
# 상위 디렉토리
상위
=
os. path.dirname (경로)
인쇄
(
"상위 디렉토리"
, 상위)
종료 :
os.path.relpath() 및 os.path.dirname() 사용
위의 예에서 상위 디렉토리를 가져오는 것은 한 수준으로 제한되었습니다. , 우리는 현재 디렉토리의 상위 레벨을 한 레벨로만 얻을 수 있습니다... 상위 디렉토리의 상위를 찾고자 한다면 위의 코드는 실패할 것입니다. 이는 os.path.dirname ()
.
os.path.relpath ()
파이썬에서 사용 현재 작업 디렉토리 또는 주어진 디렉토리에서 주어진 경로에 있는 파일에 대한 상대 경로를 가져옵니다.
구문: os.path.relpath(경로, 시작 = os.curdir)
매개변수:
경로: 파일 시스템 경로를 나타내는 경로와 유사한 개체입니다.
시작(선택 사항): 파일 시스템 경로를 나타내는 경로와 유사한 개체입니다.
주어진 경로의 상대 경로는 시작으로 표시된 디렉터리를 기준으로 계산됩니다. 이 매개변수의 기본값은 os입니다. 일정한 st인 curdir 현재 디렉토리를 참조하기 위해 운영 체제에서 사용하는 링입니다.경로류 개체는 경로를 나타내는 문자열 또는 바이트열 개체입니다.
반환 유형: 이 메소드는 시작 디렉토리에서 주어진 경로에 대한 상대 파일 경로를 나타내는 문자열 값을 반환합니다.0222
예:
사용자 지정 수준에 따라 상위 디렉터리를 가져오기 위해 경로
및 수준
을 다음과 같이 허용하는 getParent()
함수를 만듭니다. 인수. 함수 내에서 for 루프는 레벨 + 1
시간 숫자를 반복하고 for 루프
루프 내에서는 os.path.dirname ()
이 호출됩니다. for 루프 내에서 이 함수를 호출하면 os.path.relpath()가 파일에 대한 상대 경로를 제공하는 시작점이 됩니다.
아래는 구현입니다.
# Python getter
# 상위 디렉토리
가져오기
os.path
# 부모를 가져오는 함수
def
getParent (경로, 수준
=
<코드 클래스 = "값"> 1 <코드 클래스 = "일반">):
<코드 클래스 = "일반"> 공통 =
경로
# for 루프를 사용하여
#
#에 필요한 시작점 os.path.relpath()
i
범위
(레벨
+
1
):
# 시작점
공통
=
os.path.dirname (공통)
# 지정된 상위 디렉토리
# 레벨
반환
os.path.relpath (경로, 공통)
경로 <코드 클래스 = "키워드"> =
<코드 클래스 = "문자열"> `D: / 파이참 프로젝트 / 파이 thon.Engineering / Nikhil / gfg.txt`
인쇄
(getParent(경로,
2
))
종료 :