Сообщить об ошибке.

Функция expanduser() модуля os.path в Python

Заменить компонент '~' или '~user' домашним каталогом

Синтаксис:

import os.path

os.path.expanduser(path)

Параметры:

  • path - путь к файлу или каталогу.

Возвращаемое значение:

  • путь с домашним каталогом пользователя.

Описание:

Функция expanduser() модуля os.path возвращает аргумент с начальным компонентом пути '~' или '~user', замененным домашним каталогом этого пользователя. Если расширение пути завершается неудачно или путь не начинается с тильды '~', то путь возвращается без изменений.

Аргумент path может принимать байтовые или текстовые строки. Результатом будет является передаваемый тип.

Функция os.path.expanduser() может принимать объект, представляющий путь к файловой системе, например такой как pathlib.PurePath.

  • В Unix начальный компонент '~' заменяется переменной окружения HOME, если она установлена, в противном случае домашний каталог текущего пользователя ищется в каталоге паролей через встроенный модуль pwd. Пользователь просматривается непосредственно в каталоге паролей.
  • В Windows будет использоваться USERPROFILE, если он установлен, в противном случае будет использоваться комбинация HOMEPATH и HOMEDRIVE. Начальный пользователь обрабатывается путем удаления последнего компонента каталога из созданного выше пути пользователя.

Примеры использования:

>>> import os
>>> os.path.expanduser(~/file.txt) 
# '/home/docs-python/file.txt'

# Изменим переменную 'HOME' среды окружения
>>> os.environ["HOME"] = '/home/testuser'
>>> os.path.expanduser(~/file.txt)
# '/home/testuser/file.txt'

>>> os.path.expanduser('~docs-python/file.txt')
# '/home/docs-python/file.txt'