>백엔드 개발 >파이썬 튜토리얼 >프로그램 실행 파일 경로를 얻는 Python 메소드

프로그램 실행 파일 경로를 얻는 Python 메소드

不言
不言원래의
2018-04-27 10:16:016920검색

다음은 프로그램 실행 파일 경로를 얻는 Python 방법입니다(권장). 좋은 참고값이 있어 모든 분들께 도움이 되었으면 좋겠습니다. 함께 살펴보겠습니다

1. 현재 실행 중인 기본 스크립트 메서드를 가져옵니다: sys.argv[0] 및 _ file _

(1) sys.argv

A가 Python에 전달됩니다. 스크립트 명령 매개변수 목록입니다. sys.argv[0]은 스크립트의 이름입니다. 일반적으로 상대 경로를 가져옵니다. os.path.abspath(sys.argv[0])를 사용하여 실행 파일의 절대 경로를 가져옵니다.

dirname, filename = os.path.split(os.path.abspath(sys.argv[0])) 
os.path.realpath(sys.argv[0])

sys.argv가 명령줄에서 실행되는 경우 인터프리터 경로가 반환됩니다: [' /Library/Frameworks/Python.framework/Versions/3.6/bin/ipython3']

(2)_ _ file_ _

현재 실행 모듈이 있는 경로를 가져옵니다. 위치는 일반적으로 상대 경로입니다. os.path를 사용합니다. .abspath(_ _ file_ _)는 실행 파일의 절대 경로를 가져옵니다.

dirname, filename = os.path.split(os.path.abspath( _ _ file_ _)) 
os.path.realpath(_ _ file_ _)

참고: Python 콘솔에서 print _ _ file _을 직접 사용하면 '_file_' 이름이 정의되지 않았습니다 오류가 발생합니다. 현재 어떤 스크립트에서도 실행되지 않기 때문에 당연히 _file__에 대한 정의가 없습니다.

(3) sys.argv[0]과 _ _ 파일_ _의 차이점: 주 실행 파일에 있을 때는 둘 사이에 차이가 없지만 다른 파일에 있을 때는 다릅니다. a와 같은 파일 .py와 b.py 두 파일

a.py를 실행한 결과는 다음과 같습니다.

위 결과에서 알 수 있듯이: 둘 다 a.py인 경우 둘 다 결과는 0입니다. 그러나 a에서 b를 가져올 때 실행된 sys.argv[0]는 여전히 기본 실행 파일인 a.py를 참조하고 _ _ file_ _은 b를 출력합니다. py

2.sys.path

모듈 검색 경로의 문자열 목록입니다. 환경 변수 PYTHONPATH에 의해 초기화됩니다. 는 디렉터리 목록이고, sys.path[0]은 Python 인터프리터를 호출하는 현재 스크립트가 있는 디렉터리, 즉 주 실행 파일의 상위 디렉터리입니다.

예: /user/ybp/a.py의 a.py 파일에서 실행한 경우: print(sys.path[0])==>/user/ybp,

명령줄에서 실행하면 빈 문자열이 반환됩니다. ;

3. os.path는 시스템 환경 변수이므로 위와 구별되어야 합니다. os.path[0]가 없으며 os.path에 일부 메소드가 있습니다.

(1)os.path.split(path)

경로 이름을 머리와 꼬리 쌍으로 나눕니다. 뒤에 슬래시가 없습니다. 입력 경로가 슬래시로 끝나면 빈 트레일러가 얻어집니다.

입력 경로에 슬래시가 없으면 헤더 필드가 비어 있습니다. 입력 경로가 비어 있으면 결과 헤드와 테일도 비어 있습니다.

https://docs.python.org/2/library/os.path.html#os.path.split

(2)os.path.realpath(path)

특정 파일 반환 name 절대 경로는 명령줄에서 실행할 수 있습니다.

https://docs.python.org/2/library/os.path.html#os.path.realpath

4.os.getcwd()는 현재 작업 경로를 반환합니다. 반드시 그럴 필요는 없습니다. 스크립트에서 실행하면 이 명령은 명령줄에서 실행할 수 있는 pwd와 동일하며 절대 경로가 반환됩니다.

관련 권장 사항:

python csv 텍스트에서 지정된 데이터를 얻는 방법


위 내용은 프로그램 실행 파일 경로를 얻는 Python 메소드의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.