Python 홈 디렉토리 가져오기

Ammar Ali 2023년6월21일
  1. Python에서 os.path.expanduser 모듈을 사용하여 홈 디렉토리 가져오기
  2. Python에서 pathlib 라이브러리를 사용하여 홈 디렉토리 가져오기
Python 홈 디렉토리 가져오기

이 튜토리얼에서는 Python에서 os.path.expanduser 또는 pathlib 라이브러리를 사용하여 홈 디렉토리의 경로를 가져오는 방법에 대해 설명합니다.

Python에서 os.path.expanduser 모듈을 사용하여 홈 디렉토리 가져오기

사용자의 홈 디렉토리를 얻으려면 Python에서 os.path.expanduser를 사용할 수 있습니다. os.path.expanduser() 함수 내부에 문자열 문자 ~를 전달해야 현재 로그인한 사용자의 홈 디렉토리 경로를 반환합니다.

내장 비밀번호 데이터베이스 또는 pwd 모듈을 사용하여 홈 디렉토리의 경로를 검색하고 pwd 모듈은 로그인 이름 및 비밀번호와 같은 사용자의 계정 세부 정보를 제공합니다. 이 모듈은 Windows 및 Linux와 같은 모든 플랫폼에서 작동합니다.

예를 들어 os.path.expanduser 모듈을 사용하여 홈 디렉토리를 가져옵니다. 아래 코드를 참조하십시오.

from os.path import expanduser

home_directory = expanduser("~")
print(home_directory)

출력:

C:\Users\ammar

위의 코드는 Windows에서 테스트되었으며 사용자 및 플랫폼에 따라 출력이 변경될 수 있습니다. 현재 로그인하지 않은 다른 사용자의 홈 디렉토리 경로를 찾으려면 위 코드에서 ~ 문자 뒤에 사용자 이름을 추가할 수 있습니다.

홈 디렉토리 경로를 다른 경로와 결합하는 것과 같이 os.path.join() 함수를 사용하여 두 경로를 결합할 수도 있습니다. os.path.join() 함수 내에서 결합하려는 경로를 전달할 수 있습니다.

예를 들어 os.path.join() 함수를 사용하여 위의 경로를 다른 경로와 연결해 보겠습니다. 아래 코드를 참조하십시오.

from os.path import expanduser, join

home_directory = expanduser("~")
new_directory = join(home_directory, "newPathName")
print(home_directory)
print(new_directory)

출력:

C:\Users\ammar
C:\Users\ammar\newPathName

위의 코드에서는 홈 디렉토리 경로를 다른 경로와 연결했습니다. 2개 이상과 같이 여러 경로를 함께 연결할 수도 있습니다.

일부 문자와 결합된 백슬래시가 올바른 결과를 출력하지 않기 때문에 join() 함수 내부에 백슬래시 \와 같은 특수 문자를 추가할 수 없습니다. 예를 들어 위의 경로를 newPathName\tpath2로 변경하면 \t가 문자열에서 탭 공간으로 사용되기 때문에 결과에 탭 공간이 포함됩니다.

join() 함수 내에 각 경로를 개별적으로 추가하는 것이 좋습니다. 예를 들어 위의 경로와 다른 경로를 연결하려면 세 번째 인수로 전달해야 하며 join() 함수는 새 경로의 끝에 이를 넣고 백슬래시가 추가됩니다. 자동으로.

아래 예제 코드를 참조하십시오.

join(path1, path2, path3, ....)

코드 내에서 사용하기 전에 join()expanduser() 기능을 가져와야 합니다. 자세한 내용은 os.path.expanduser 라이브러리를 확인하십시오.

Python에서 pathlib 라이브러리를 사용하여 홈 디렉토리 가져오기

또한 pathlib 라이브러리를 사용하여 home() 기능을 사용하여 홈 디렉토리의 경로를 가져올 수 있습니다. 예를 들어 pathlib 라이브러리를 사용하여 홈 디렉토리를 찾아봅시다.

아래 코드를 참조하십시오.

from pathlib import Path

home_directory = str(Path.home())
print(home_directory)

출력:

C:\Users\ammar

위의 코드에서 str 함수를 사용하여 home() 함수의 출력을 문자열로 변환했습니다. 이는 모든 플랫폼(예: Windows 및 Linux)에서 작동합니다. 그러나 사용자 및 플랫폼에 따라 출력이 변경될 수 있습니다.

또한 pathlib 라이브러리의 PureWindowsPath().joinPath() 기능을 사용하여 둘 이상의 경로를 결합할 수 있습니다. 시작 경로는 PureWindowsPath() 함수 내에서 전달되고 새 경로는 joinPath() 함수에 추가되어 하나의 결합된 경로를 얻습니다.

예를 들어 PureWindowsPath().joinPath() 함수를 사용하여 위의 경로를 두 개의 경로와 결합해 보겠습니다. 아래 코드를 참조하십시오.

from pathlib import Path, PureWindowsPath

home_directory = Path.home()
new_directory = PureWindowsPath(home_directory).joinpath("newPathName", "path2")
print(home_directory)
print(new_directory)

출력:

C:\Users\ammar
C:\Users\ammar\newPathName\path2

위의 코드에서는 두 개의 경로를 추가했지만 원하는 만큼 경로를 추가할 수 있지만 동일한 문자열 내에서 백슬래시를 사용하지 않아야 합니다. 일부 특수 문자와 결합된 백슬래시로 인해 \n이 새 줄을 추가하고 \t가 출력에 탭 공간을 추가하는 것과 같은 문제가 발생하기 때문입니다.

joinPath() 함수 내에 각 경로를 개별적으로 추가하는 것이 좋습니다.

코드 내에서 사용하기 전에 Path()PureWindowsPath() 함수를 가져와야 합니다. 자세한 내용은 pathlib 라이브러리를 확인하십시오.

작가: Ammar Ali
Ammar Ali avatar Ammar Ali avatar

Hello! I am Ammar Ali, a programmer here to learn from experience, people, and docs, and create interesting and useful programming content. I mostly create content about Python, Matlab, and Microcontrollers like Arduino and PIC.

LinkedIn Facebook

관련 문장 - Python Directory