【问题标题】:Python, Find the drive letter with windows installedPython,找到安装了windows的驱动器号
【发布时间】:2016-07-02 21:30:37
【问题描述】:

当我遇到问题时,我开始制作一个有趣的程序。问题是我想找到安装了 Windows 的驱动器号(根驱动器)。我以为已经为此制作了一个功能,但是我搜索了一段时间,但找不到。

我编写这段代码是为了完成我刚才描述的事情。这段代码是多余的吗?我是个白痴吗?可能有一个更简单的方法...

def root():

root = ""
i = 0
drives = win32api.GetLogicalDriveStrings()
drives = drives.split("\000")[:-1]

for i in range(0, len(drives)):
    drives[i] = drives[i].replace("\\", "/")

i = 0
for i in range(0, len(drives)):

    if os.path.exists(drives[i] + "Windows"):
        root = drives[i]
        break

return root

我想有人可以将其用于测试目的或其他目的。

【问题讨论】:

  • GetSystemDirectoryGetWindowsDirectory 都可以使用 - 我想两者都有帮助。

标签: python winapi


【解决方案1】:

有一个环境变量windir。在我的计算机上包含“C:\Windows”。你可以通过os.getenv('WINDIR')读取这个变量(参考python 2:os.getenv()python 3:os.getenv())。

【讨论】:

  • 重要的是要注意,Windows 不必安装到名为“Windows”的目录中。您的解决方案是唯一始终可靠的方法。附带说明:在 python 3.5 上,您还可以使用 os.environ['windir']
  • os.environ 不限于 python 3.5。 Ist 也存在于 python 2.7 中 (python 2.7: os.envirion)
  • 由于目标是获取安装 Windows 的 驱动器号,因此您应该使用 systemdrive 环境变量而不是 windir
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-09-12
  • 1970-01-01
  • 2023-03-26
  • 1970-01-01
  • 2014-08-10
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多