一尘不染

我可以使用什么代码检查Python是否在IDLE中运行?

python

正如标题所说。我想编写一个行为不同的脚本,具体取决于它是在控制台窗口中运行还是在IDLE中运行。是否只有在我可以检查的IDLE中运行时才存在的对象?环境变量?

我在Windows上使用的是Python 2.6.5和2.7。

编辑:

到目前为止给出的答案有效。
但是我正在寻找一种官方的方式来做到这一点,或者看起来像黑客一样。如果有人提出,我会接受的。否则,几天后,我会接受最早的答案。谢谢大家!


阅读 197

收藏
2021-01-20

共1个答案

一尘不染

Google在2003年找到了我这个论坛帖子。有了Python
3.1(用于win32)和IDLE随附的版本,len(sys.modules)os 47在命令行中,而IDLE shell在122中。

但是,为什么您仍然需要关心呢?Tkinter代码在与IDLE一起运行时会有些烦恼(因为后者使用tkinter本身),但是我认为我可以安全地假设您不必关心。

2021-01-20