2012-04-16 17 views
39

Duplicar posible:
How to find the real user home directory using python?
How to get the home directory in Python?Buscar "directorio inicial" en Python?

quiero acceder /home/weasel de leer algunos archivos de allí, pero no quiero escribir la ruta completa por supuesto - por lo demás los usuarios pueden usar el script ... ¿cómo sabes tu nombre de usuario o tu directorio de inicio con python en Linux?

Gracias

+0

Posible duplicado: http://stackoverflow.com/q/2668909/777186 – jogojapan

+2

Éste también: http://stackoverflow.com/q/4028904/777186 – jogojapan

+0

En caso de que alguien simplemente desee el directorio principal en lugar del usuario directorio, puede intentar encontrar el directorio de usuario ('ud') y hacer esto:' hd = os.sep.join (ud.split (os.sep) [: - 1]) ' – Shule

Respuesta

107

Para obtener el homedir en Python, puede utilizar os.path.expanduser('~').

Esto también funciona si es parte de una ruta más larga, como os.path.expanduser('~/some/directory/file.txt'). Si no hay ~ en la ruta, la función devolverá la ruta sin cambios.

Así que dependiendo de lo que quieres hacer es mejor que leer os.environ['HOME']

El nombre de usuario está disponible a través getpass.getuser()

19

La manera portátil de conseguir el directorio principal en Python está utilizando os.path.expanduser('~').

Cuestiones relacionadas