在Windows上通往台式机的路径,而不必知道用户名



我使用py2exe创建.exe文件,以便在计算机上没有python的人可以运行脚本。因为我正在创建.EXE文件的别名(快捷方式),所以我需要将包含Python脚本目标的文件夹的路径进行编码。我还需要确保它可以在任何人的桌面上使用(无论用用户名),并在一个称为报告的文件夹中使用。我尝试使用以下代码行,但我发现了一个无效的语法错误:

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

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

预先感谢

也许这对您有帮助

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

这在我的Windows安装上有效:

>>> import os
>>> desktop = os.path.expanduser('~') + 'Desktop'
>>> print(desktop)
C:UsersMY_USERNAMEDesktop
>>> cwd = os.path.expanduser('~DesktopReports')
>>> print(cwd)
C:UsersMY_USERNAMEDesktopReports

作为独立脚本:

import os
import csv2xlsx 

cwd = os.path.expanduser('~DesktopReports')
print(cwd)
csv2xlsx.main(cwd + "Report.csv", cwd + "Report.xlsx")

输出:

C:UsersMY_USERNAMEDesktopReports

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

os.environ [" homepath"]

它可能行不通,而是用代码代替它并尝试一下。祝你好运!

最新更新