3

我在 Windows 上使用 python。我正在尝试找到一种在启动 python 时导入一些默认模块的方法。这意味着,在启动 python 时,应该已经导入了一些模块,就像builtins一样。有什么办法吗?

谢谢。

4

3 回答 3

5

如果您的意思是在进入交互模式时,只需制作一个小的启动脚本。而不是仅仅使用以下命令启动 python:

python

改为尝试:

python -i startupImports.py

启动导入.py:

import time
from collections import defaultdict
from customclass import myclass
#...etc
于 2013-09-23T15:27:13.853 回答
3

定义一个PYTHONSTARTUP环境变量并将其指向一个 python 文件,当您在没有命令行脚本的情况下以交互方式启动 python 时,它将被加载。
我的PYTHONSTARTUP观点是.pythonrc,我尝试__boot__.py在当前目录中为任何交互式 python 会话导入一个(引导程序)。

try:
    from __boot__ import *
except Exception:
    pass

我的 pythonrc 中还有很多其他的东西,比如__future__导入、readline 设置等。

于 2013-09-23T15:41:16.140 回答
1

一种选择是将您的导入添加到sitecustomize.py. 该文件在启动时自动导入。无论 Python 是否以交互模式启动,它都会被加载。引用文档

[在 site.py 中] 尝试导入名为 sitecustomize 的模块,该模块可以执行任意特定于站点的自定义。它通常由系统管理员在 site-packages 目录中创建。如果此导入失败并出现 ImportError 异常,则它会被静默忽略。

另一种选择是PYTHONSTARTUP使用导入将环境变量设置为启动脚本。不过,这只会在 Python 以交互模式启动时执行。

于 2013-09-23T15:32:35.717 回答