如何找到根目录以便路径可以在多台计算机上运行?

Leg*_*ary 2 python windows path python-2.7

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

c://users/username/.../endingpath
Run Code Online (Sandbox Code Playgroud)

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

我在Windows 7上运行Python 2.7

ste*_*eha 6

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

所以:

import os
user_name = os.getenv("USERNAME")
Run Code Online (Sandbox Code Playgroud)

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

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

所以:

import os
appdata_dir_name = os.getenv("APPDATA")
Run Code Online (Sandbox Code Playgroud)

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

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

  • 我要说保持应用程序设置最好是将配置文件存储在%APPDATA%下(如果有多个文件,请创建一个以应用程序命名的子目录并将其存储在那里). (2认同)