Как указать текущее имя пользователя в пути к файлу

1

Я хочу скопировать файл, расположенный в папке текущего пользователя, зарегистрированного.

поэтому я искал, как идентифицировать пользователя, который вошел в систему, поэтому я могу указать на папку пользователя в окнах. например, я хочу скопировать файл "hi.txt" в папку Microsoft.

"C:\Documents and Settings\john\Application Data\Microsoft\hi.txt"

поэтому, когда я перемещаю script в другую ОС, я хочу, чтобы он идентифицировал соответствующего пользователя.

поэтому я увидел вариант:

import getpass

user = getpass.getuser()

поэтому теперь я хочу поместить переменную "пользователь" вместо того, чтобы указывать на "john" но как я могу поместить переменную в строку моего пути?

Заранее спасибо, я новичок в программировании и новичок в python.

Теги:
file
variables
copy

2 ответа

5

Домашний каталог текущего пользователя можно развернуть с помощью os.path.expanduser(). Чтобы открыть файл "whatever" в домашнем каталоге текущего пользователя, используйте

with open(os.path.expanduser("~/whatever")) as f:
    # whatever
  • 0
    Так что, если я хочу передать переменной строку пути?
  • 0
    о, я узнал! большое Вам спасибо
1

Следующие коды копируются из оболочки python, возможно, это может вам помочь.

>>> import getpass
>>> user = getpass.getuser()
>>> user
'yang'
>>> path = "C:\\Documents and Settings\\%s\\Application Data\\Microsoft\\hi.txt" % user
>>> print path
C:\Documents and Settings\yang\Application Data\Microsoft\hi.txt
>>> 

используйте оператор%.

  • 1
    Просто для вашей информации, если вы префикс вашего пути Windows с r (например, r "C: \ Documents"), вам не нужно избегать каждой обратной косой черты. Чрезвычайно полезно при работе в Windows и копировании путей вокруг.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню