python - 如何找到根目录,以便一条路径跨多台计算机工作?

标签 python windows path python-2.7

我正在编写一个程序来设置我用来存储数据的文件路径。格式如下

c://users/username/.../endingpath

当我切换计算机时,用户名会更改。有没有一种方法或方法可以指定我正在使用的特定计算机的用户名?或者是否有更好的方法使路径计算机独立?

我在 Windows 7 上运行 Python 2.7

最佳答案

在 Windows 下,您可以查看几个预定义的环境变量。其中之一是 USERNAME

所以:

import os
user_name = os.getenv("USERNAME")

Windows 还为某些目录定义了环境变量。如果您的文件应存储在用户的个人主目录中(在 Windows 7 上,这是:%SystemDrive%\Users\{username}),您可以使用 USERDATA用户配置文件。这比尝试使用用户名构建自己的路径要好。

@Matteo Italia 指出 APPDATA 可能是最好用的;那是专门供应用程序存储其数据文件的目录。这对我来说很有意义;我认为他是对的。

所以:

import os
appdata_dir_name = os.getenv("APPDATA")

我在维基百科中找到了 Windows 环境变量列表:

http://en.wikipedia.org/wiki/Environment_variable#Examples_from_Microsoft_Windows

关于python - 如何找到根目录,以便一条路径跨多台计算机工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11196496/

相关文章:

java - 矩阵中随机位置的 2 个单元格之间的最短路径

python - 每个请求在 Appengine 中都会到达服务器两次

c++ - 如何确定 exe 文件是 .Net exe 还是常规 exe?

c# - 用于创建新调制解调器的 API

windows - WMI 现在已弃用 : how to query from .Net Core?

windows - EasyPHP Windows7 错误的 PATH 变量

python - 如何使用 django 显示无效电子邮件地址的错误消息

Python 3 整数地址

python - PyQT QtGui.QTableWidgetItem

ruby - 如何在无环境 Ruby 脚本中指定 ruby​​gems 路径?