Windows上的桌面路径,无需知道用户名

时间:2017-09-29 03:31:14

标签: python

我使用py2exe创建.exe文件,以便计算机上没有Python的人可以运行脚本。因为我正在创建.exe文件的别名(快捷方式),所以我需要硬编码包含python脚本所针对的文件的文件夹的路径。我还需要确保它可以在任何人的桌面上工作(无论用户名如何),并在名为Reports的文件夹中工作。我尝试使用以下代码行但是语法错误无效:

cwd = r"os.path.expanduser("~/Desktop/Reports")"

我想知道是否有人可以提供任何建议来帮助解决这个问题?

提前致谢

3 个答案:

答案 0 :(得分:2)

这适用于我的Windows安装:

>>> import os
>>> desktop = os.path.expanduser('~') + '\Desktop'
>>> print(desktop)
C:\Users\MY_USERNAME\Desktop
>>> cwd = os.path.expanduser('~\Desktop\Reports')
>>> print(cwd)
C:\Users\MY_USERNAME\Desktop\Reports

作为独立脚本:

import os
import csv2xlsx 


cwd = os.path.expanduser('~\Desktop\Reports')
print(cwd)

csv2xlsx.main(cwd + "\Report.csv", cwd + "\Report.xlsx")

<强>输出:

C:\Users\MY_USERNAME\Desktop\Reports

答案 1 :(得分:1)

我不是最好的python,但我知道如果你在代码中替换它,你将获得你的桌面目录。

os.environ [ “HOMEPATH”]

它可能无法正常工作,但可以在代码中替换它并尝试一下。 祝你好运!

答案 2 :(得分:1)

也许这有助于你

desktop="c:\\users\\{}\\Desktop".format(os.getenv("username"))