Tel*_*lmo 15 python cmd python-2.7
我正在编写一个简单的Python(2.7.3)脚本,但我必须得到用户的主文件夹.我试过了:
import os
home_folder = os.environ["HOME"]
Run Code Online (Sandbox Code Playgroud)
当我在IDLE上运行此代码时,它工作正常,但如果我从cmd启动它,它会给我: «KeyError: 'HOME'»
有人可以告诉我为什么吗?我怎么解决这个问题?
Nat*_*han 21
Windows使用USERPROFILE,而不是HOME.Windows没有HOME和其他操作系统没有USERPROFILE,因此使用这些中的任何一个都会降低平台的独立性.
为了保持平台独立性,您可以使用expanduserfrom os.path,如下所示:
import os.path
home_folder = os.path.expanduser('~')
Run Code Online (Sandbox Code Playgroud)
在旁注中,您可以使用print(os.environ)查看您有权访问的所有环境变量,这些变量显示IDLE有附加内容.
Windows没有HOME环境变量。它改用USERPROFILE。要解决该问题,您可以在控制台上定义一个新变量“ HOME”:
set HOME=%USERPROFILE%
Run Code Online (Sandbox Code Playgroud)
作为USERPROFILE变量的副本。
您可以检查它们是否相同:
echo %USERPROFILE%
echo %HOME%
Run Code Online (Sandbox Code Playgroud)
它将适用于当前会话。
| 归档时间: |
|
| 查看次数: |
8638 次 |
| 最近记录: |