有没有办法找出python脚本是否在IDLE解释器或终端中运行?
如果可能的话,跨平台工作,或者如果每个平台需要不同的方式。
如果可能的话,使用Python 2和Python 3,或者如果每个版本需要不同的方式。
我能想到的唯一方法是检查为IDLE运行的进程,但我不知道该怎么做。
如果IDLE对另一个脚本打开并且我的脚本在终端中运行,即使我的脚本没有在IDLE中运行,进程检查也会返回true。
我的脚本需要以不同的方式运行,具体取决于它是在IDLE还是终端中运行。
答案 0 :(得分:8)
这个似乎可以在Python3 / Linux上运行
import sys
print("idlelib" in sys.modules)
如果脚本从空闲状态运行,则返回True
,否则返回False
。请测试Python / OS的其他组合!