2012-01-04 3 views

ответ

0

Вы можете получить путь с «Ryan» заменяется на имя текущего пользователя, используя следующий код:

import getpass 
path_tpl = 'C:\users\{}\AppData\Local\Google\Chrome\Application' 
path = path_tpl.format(getpass.getuser()) 

Но вы, вероятно, следует основывать свою реализацию на данных, извлечения из реестра Windows' - это больше, надежный и выше путь будет работать только на Windows, так или иначе ...

5

Взгляните на expanduser из os.path:

os.path.expanduser(path)

В Unix и Windows возвратите аргумент с исходным компонентом ~ или ~ пользователя, замененным домашним каталогом этого пользователя.

[..]

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

Если сбой расширения или если путь не начинается с тильды, путь возвращается без изменений.

+0

+1 Хороший вопрос. Таким образом, решение должно быть примерно таким: 'os.chdir (os.path.expanduseer ('~ \ AppData \ Local \ Google \ Chrome \ Application'))', правильно? – Tadeck

+0

@ Тадек, точно. В настоящее время я не в Windows, так что кому-то еще придется проверять, но я так и делаю это в Linux. –

+0

Я тоже не в Windows, поэтому я был бы рад видеть, что это подтверждено :) На данный момент я предполагаю, что так оно и будет работать. – Tadeck

Смежные вопросы