找出是否在IDLE或终端/命令提示符下运行python脚本

时间:2013-06-16 13:18:41

标签: python python-3.x terminal cross-platform python-idle

有没有办法找出python脚本是否在IDLE解释器或终端中运行?

如果可能的话,跨平台工作,或者如果每个平台需要不同的方式。

如果可能的话,使用Python 2和Python 3,或者如果每个版本需要不同的方式。

我能想到的唯一方法是检查为IDLE运行的进程,但我不知道该怎么做。

如果IDLE对另一个脚本打开并且我的脚本在终端中运行,即使我的脚本没有在IDLE中运行,进程检查也会返回true。

我的脚本需要以不同的方式运行,具体取决于它是在IDLE还是终端中运行。

1 个答案:

答案 0 :(得分:8)

这个似乎可以在Python3 / Linux上运行

import sys

print("idlelib" in sys.modules)

如果脚本从空闲状态运行,则返回True,否则返回False。请测试Python / OS的其他组合!