正如标题所说。我想编写一个行为不同的脚本,具体取决于它是在控制台窗口中运行还是在IDLE中运行。是否只有在我可以检查的IDLE中运行时才存在的对象?环境变量?
我在Windows上使用的是Python 2.6.5和2.7。
到目前为止给出的答案有效。 但是我正在寻找一种官方的方式来做到这一点,或者看起来像黑客一样。如果有人提出,我会接受的。否则,几天后,我会接受最早的答案。谢谢大家!
Google在2003年找到了我这个论坛帖子。有了Python 3.1(用于win32)和IDLE随附的版本,len(sys.modules)os 47在命令行中,而IDLE shell在122中。
但是,为什么您仍然需要关心呢?Tkinter代码在与IDLE一起运行时会有些烦恼(因为后者使用tkinter本身),但是我认为我可以安全地假设您不必关心。