如何使用 Python 查詢真實的使用者主目錄?


在多使用者作業系統中,主目錄是檔案系統中的一個位置,用於儲存特定使用者的檔案。

登入目錄是主目錄的另一個名稱。您可以透過多種方法使用 Python 獲取主目錄。

使用 os 模組

Python 中的 os.path.expanduser() 函式提供了在所有平臺上檢索使用者主目錄的最簡單方法。Python os 模組提供了 **os.path.expanduser(")** 來檢索主目錄。如果它是較長路徑的一部分,此方法也適用。如果路徑中沒有 ~,則該函式將返回未更改的路徑。

示例 - 主目錄路徑

以下是如何使用 os.path.expanduser() 函式查詢主目錄的示例:

import os home_directory = os.path.expanduser( '~' ) print( home_directory )

輸出

以下是上述程式碼的輸出:

C:\Users\Lenovo

示例 - 主目錄內的檔案

使用 **os.path.join** 建立路徑 C:\Users\Lenovo\Downloads\Works:

import os home_directory = os.path.expanduser( '~' ) path = os.path.join( home_directory, 'Documents', 'mysql_access' ) print( path )

輸出

以下是上述程式碼的輸出 

C:\Users\Lenovo\Documents\mysql_access

示例 - ~ 替換

如果您已經擁有一個字串路徑,例如 C:\Users\Lenovo\Downloads\Works,並且希望將其替換為主目錄路徑,您可以將其直接放入 .expanduser() 中,而不是使用生成路徑的安全方法,即 os.path.join():

import os path = os.path.expanduser('~\Documents\mysql_access') print( path )

輸出

以下是上述程式碼的輸出:

C:\Users\Lenovo\Documents\mysql_accessy

使用 pathlib 模組

Python 中的 pathlib 模組也可以用來獲取使用者的主目錄。

示例 - 主目錄路徑

以下是如何使用 path.home() 函式查詢主目錄路徑的示例:

from pathlib import Path home_directory = Path.home() print( f'Path: { home_directory} !' )

輸出

以下是上述程式碼的輸出:

Path: C:\Users\Lenovo !

示例 - 主目錄內的檔案

使用 .joinpath,您還可以快速建立使用者主目錄內的路徑 ():

from pathlib import Path path = Path.home().joinpath( 'Documents', 'mysql_access' ) print(path)

輸出

以下是上述程式碼的輸出:

C:\Users\Lenovo\Documents\mysql_access

示例 - ~ 替換

如果您已經擁有一個字串路徑,例如 /Documents/mysql_access,並且希望將其替換為主目錄路徑,可以使用 .expanduser():

from pathlib import Path path_string = '~\Documents\mysql_access' path = Path(path_string).expanduser() print(path)

輸出

以下是上述程式碼的輸出:

C:\Users\Lenovo\Documents\mysql_access

更新於: 2022-08-18

15K+ 瀏覽量

開啟您的 職業生涯

透過完成課程獲得認證

立即開始
廣告
© . All rights reserved.