logo

Python에서 현재 디렉터리 가져오기

이 기사에서는 Python에서 작업 디렉터리를 가져오고 변경하는 방법을 다룹니다. 함께 일하는 동안 파일 처리 파일이 이름으로만 참조된다는 것을 눈치챘을 것입니다. 'GFG.txt' 파일이 스크립트 디렉터리에 없으면 Python에서 오류가 발생합니다. 의 개념 현재 작업 디렉토리(CWD) 여기서 중요해집니다. CWD를 폴더로 생각하면 Python이 내부에서 작동합니다. 파일이 이름으로만 호출될 때마다 Python은 해당 파일이 CWD에서 시작한다고 가정합니다. 이는 파일이 Python의 CWD에 있는 경우에만 이름 전용 참조가 성공한다는 의미입니다.

메모: Python 스크립트가 실행되는 폴더를 현재 디렉터리라고 합니다. Python 스크립트가 있는 경로가 아닐 수도 있습니다.



Python os 모듈이란 무엇입니까?

파이썬이 제공하는 OS 모듈 운영체제와 상호작용하기 위해 이 모듈은 Python의 표준 유틸리티 모듈에 포함됩니다. os 모듈의 모든 함수는 OS오류 유효하지 않거나 액세스할 수 없는 파일 이름 및 경로 또는 올바른 유형을 가지고 있지만 운영 체제에서 허용되지 않는 기타 인수의 경우.

Python 현재 디렉토리 찾기

sys.argv[0]을 사용하여 현재 Python 스크립트의 디렉토리를 가져옵니다.

이 예에서는 sys.argv[0] 스크립트 파일의 경로를 검색하고 os.path.dirname() 경로에서 현재 디렉터리를 추출합니다.

파이썬3






이 기기에 숨겨진 앱



import> os> import> sys> script_directory>=> os.path.dirname(os.path.abspath(sys.argv[>0>]))> print>(script_directory)>

>

>

출력 :

현재 Python 스크립트의 디렉터리 가져오기

현재 Python 스크립트의 디렉터리를 가져옵니다.

Inspect 모듈을 사용하여 현재 Python 스크립트의 디렉터리 가져오기

이 예에서는 검사.getfile(검사.현재프레임()) 현재 스크립트 파일의 경로를 반환하고 os.path.dirname() 경로에서 현재 디렉터리를 추출합니다.

파이썬3




import> inspect> import> os> script_directory>=> os.path.dirname(os.path.abspath(> >inspect.getfile(inspect.currentframe())))> > print>(script_directory)>

>

>

출력 :

현재 Python 스크립트의 디렉터리 가져오기

현재 Python 스크립트의 디렉터리 가져오기

os.getcwd()를 사용하여 현재 작업 디렉터리를 가져옵니다.

이 예에서는 os.getcwd() Python 스크립트의 현재 디렉토리를 가져옵니다.

파이썬3




import> os> > print>(>'File location using os.getcwd():'>, os.getcwd())>

>

>

출력 :

자바의 어떤 컬렉션
File location using os.getcwd(): /home/tuhingfg/Documents/Scripts>

메모: 사용 os.getcwd() Python 스크립트와 다른 디렉터리에서 Python 코드를 실행할 때 예상대로 작동하지 않습니다.

os.getcwd()를 사용하는 스크립트가 아닌 다른 디렉터리에서 Python 스크립트를 실행할 때 예기치 않은 결과가 발생합니다.

Python 스크립트는 내부에 배치됩니다. /home/tuhingfg/문서/스크립트 . 동일한 폴더 내에서 스크립트를 실행하면 올바른 스크립트 위치가 제공됩니다. 그러나 디렉토리를 다른 위치로 변경하면 해당 디렉토리의 위치가 출력됩니다. 이 때문입니다 os.getcwd() 스크립트를 실행하는 디렉토리를 고려합니다. 이를 바탕으로 한 결과 os.getcwd() 또한 다양합니다.

파이썬3




import> os> > print>(>'File location using os.getcwd():'>, os.getcwd())>

>

>

산출:

os.getcwd()를 사용하여 스크립트 위치 가져오기

os.getcwd()를 사용하여 스크립트 위치 가져오기

os.path.realpath() 메서드를 사용하여 Python 스크립트 위치 가져오기

os.path.realpath()를 사용하여 현재 Python 스크립트의 경로를 가져올 수 있습니다. 실제로 Python의 os.path.realpath() 메소드는 경로에서 발견된 모든 기호 링크를 제거하여 지정된 파일 이름의 표준 경로를 얻는 데 사용됩니다. 특별한 변수 __파일__ 에 전달됩니다 실제 경로() Python 스크립트의 경로를 가져오는 메서드입니다.

이 예에서는 os.getcwd() 그리고 __파일__ 두 가지 다른 결과를 제공합니다. 스크립트와 다른 폴더에서 스크립트를 실행하고 있으므로, os.getcwd() 스크립트 실행 폴더에 따라 출력이 변경되었습니다. 하지만 __파일__ 현재 작업 디렉토리에 관계없이 일정한 결과를 생성합니다.

파이썬3




import> os> > print>(>'File location using os.getcwd():'>,> >os.getcwd())> > print>(f>'File location using __file__ variable:'>+> >'{os.path.realpath(os.path.dirname(__file__))}'>)>

>

>

C# 스위치

산출:

Python 디렉토리 가져오기

Python으로 디렉토리 얻기

참고: __file__ 모듈이 파일에서 로드된 경우 모듈이 로드된 파일의 경로 이름입니다.