Python Obtener directorio de inicio
-
Obtenga el directorio de inicio usando el módulo
os.path.expanduser
en Python -
Obtenga el directorio de inicio usando la biblioteca
pathlib
en Python
Este tutorial discutirá cómo obtener la ruta del directorio de inicio usando la biblioteca os.path.expanduser
o pathlib
en Python.
Obtenga el directorio de inicio usando el módulo os.path.expanduser
en Python
Para obtener el directorio de inicio de un usuario, podemos usar os.path.expanduser
en Python. Tenemos que pasar un carácter de cadena ~
dentro de la función os.path.expanduser()
, que devolverá la ruta del directorio de inicio del usuario actual conectado.
Utiliza la base de datos de contraseñas incorporada o el módulo pwd
para buscar la ruta del directorio de inicio, y el módulo pwd
proporciona los detalles de la cuenta de un usuario, como un nombre de inicio de sesión y una contraseña. Este módulo funciona en todas las plataformas, como Windows y Linux.
Por ejemplo, obtengamos el directorio de inicio usando el módulo os.path.expanduser
. Vea el código a continuación.
from os.path import expanduser
home_directory = expanduser("~")
print(home_directory)
Producción :
C:\Users\ammar
El código anterior se prueba en Windows y el resultado puede cambiar según el usuario y la plataforma. Si queremos encontrar la ruta del directorio de inicio de otro usuario que no está conectado actualmente, podemos agregar el nombre del usuario después del carácter ~
en el código anterior.
También podemos unir dos rutas usando la función os.path.join()
, como unir la ruta del directorio de inicio con otra ruta. Podemos pasar las rutas que queremos unir dentro de la función os.path.join()
.
Por ejemplo, unamos la ruta anterior con otra ruta usando la función os.path.join()
. Vea el código a continuación.
from os.path import expanduser, join
home_directory = expanduser("~")
new_directory = join(home_directory, "newPathName")
print(home_directory)
print(new_directory)
Producción :
C:\Users\ammar
C:\Users\ammar\newPathName
En el código anterior, unimos la ruta del directorio de inicio con otra ruta. También podemos unir varios caminos, como 2 o más.
No podemos agregar un carácter especial como una barra invertida \
dentro de la función join()
porque la barra invertida combinada con algunos caracteres no generará el resultado adecuado. Por ejemplo, si cambiamos la ruta anterior a newPathName\tpath2
, el resultado contendrá un espacio de tabulación porque \t
se usa como espacio de tabulación en una cadena.
Recomendamos agregar cada ruta individualmente dentro de la función join()
. Por ejemplo, si queremos unir otra ruta con la ruta anterior, tenemos que pasarla como tercer argumento, y la función join()
lo pondrá al final de la nueva ruta y se agregará la barra invertida. automáticamente.
Vea el código de ejemplo a continuación.
join(path1, path2, path3, ....)
Asegúrese de importar las funciones join()
y expanduser()
antes de usarlas dentro del código. Consulte la biblioteca os.path.expanduser
para obtener más detalles.
Obtenga el directorio de inicio usando la biblioteca pathlib
en Python
También podemos usar la biblioteca pathlib
para obtener la ruta del directorio de inicio usando su función home()
. Por ejemplo, busquemos el directorio de inicio usando la biblioteca pathlib
.
Vea el código a continuación.
from pathlib import Path
home_directory = str(Path.home())
print(home_directory)
Producción :
C:\Users\ammar
En el código anterior, usamos la función str
para convertir la salida de la función home()
en una cadena. Esto funcionará en todas las plataformas, por ejemplo, Windows y Linux; sin embargo, la salida puede cambiar según el usuario y la plataforma.
También podemos unir dos o más rutas utilizando la función PureWindowsPath().joinPath()
de la biblioteca pathlib
. La ruta de inicio se pasará dentro de la función PureWindowsPath()
y la nueva ruta o rutas se agregarán en la función joinPath()
para obtener una ruta combinada.
Por ejemplo, combinemos la ruta anterior con dos rutas usando la función PureWindowsPath().joinPath()
. Vea el código a continuación.
from pathlib import Path, PureWindowsPath
home_directory = Path.home()
new_directory = PureWindowsPath(home_directory).joinpath("newPathName", "path2")
print(home_directory)
print(new_directory)
Producción :
C:\Users\ammar
C:\Users\ammar\newPathName\path2
En el código anterior, agregamos dos rutas, pero podemos agregar tantas rutas como queramos, pero debemos evitar la barra invertida dentro de la misma cadena. Esto se debe a que la barra invertida combinada con algunos caracteres especiales creará problemas como \n
agregará una nueva línea y \t
agregará un espacio de tabulación en la salida.
Recomendamos agregar cada ruta individualmente dentro de la función joinPath()
.
Asegúrese de importar la función Path()
y PureWindowsPath()
antes de usarlas dentro del código. Consulte la biblioteca pathlib
para obtener más detalles.