【发布时间】:2015-03-22 13:47:43
【问题描述】:
我在 Windows 下运行 Python 脚本时遇到了一些问题。 我的代码如下所示:
import os
try:
from fabric.api import run
except ImportError:
if os.name == 'posix':
os.system('pip install fabric')
elif os.name == 'nt':
os.system('C:\Python27\python.exe D:\Fabric-1.10.1\setup.py install')
from fabric.api import run
它在 Linux 下工作,但在 Windows 下我得到 ImportError。 我可以通过将 try-except 子句放在另一个脚本中并从那里激活主脚本来使其工作,如下所示:
import os
try:
from fabric.api import run
except ImportError:
os.system('C:\Python27\python.exe D:\Fabric-1.10.1\setup.py install')
os.system('C:\Python27\python.exe C:\some_path\main_script.py')
它有效,但我想避免仅为导入和安装模块创建单独的脚本。
有没有什么办法可以在windows下重新加载环境,让新安装的模块马上对python可见?
【问题讨论】:
-
你为什么要这样做?如果您只打算在自己的机器上运行脚本,则无需每次运行脚本时都尝试安装模块;这样做一次就足够了。如果您打算分发脚本,硬编码路径将不起作用。
标签: python windows python-import