1

我想通过双击 python 脚本调出一些已经导入的包的 python 窗口(可能是空闲的或基于 cmd 的)。这可能吗?如果是这样,我该怎么做?

4

3 回答 3

5

您可以使用 -i 解释器选项。python -c "import os" -i将导入 os 模块并进入解释器读取/评估循环。

您还可以将一些语句(导入、定义等)放在文件中并使用python -i <file.py>

于 2012-10-19T15:38:21.757 回答
3

当然。你想要这样的东西:

import sys
import code

preloaded_modules = dict(sys=sys)

code.interact(local=preloaded_modules)

当您将上述代码放入一个文件并运行它时,您会看到一个传统的 Python REPL(交互式解释器),除了sys模块已经被加载。您可以通过将更多模块导入您的脚本并将它们添加到preloaded_modules字典中来向您的 REPL 添加更多模块。

代码模块还具有构建各种自定义解释器的工具。

更多信息:Python 代码模块

(注意:以上参考 Python 2.x,但在 3.x 中应该基本相同)

于 2012-10-19T15:35:14.390 回答
1

您还可以使用PYTHONSTARTUP环境变量

来自文档:

PYTHONSTARTUP 如果这是一个可读文件的名称,则该文件中的 Python 命令会在第一个提示以交互模式显示之前执行。该文件在执行交互式命令的同一名称空间中执行,以便在其中定义或导入的对象可以在交互式会话中使用而无需限定。您还可以更改此文件中的提示 sys.ps1 和 sys.ps2。

and if want more drastic change like some initializaton whenever python is run, you can modify site.py or create your own pth files

于 2012-10-19T16:04:27.883 回答