Is there a way to find out if the python script is running in the IDLE interpreter or the terminal?
Works cross-platform if possible, or if needed a different way for each platform.
Work with Python 2 and Python 3 if possible, or if needed a different way for each version.
The only way I could think of is checking the processes running for IDLE but I don't know how to do that right.
If IDLE is open for another script and my script is running in the terminal, a process check would return true even if my script is not running in the IDLE.
My script needs to run differently depending on if it is running in IDLE or a terminal.
解决方案
This seems to work on Python3/Linux
import sys
print("idlelib" in sys.modules)
If will return True if the script is run from Idle, False otherwise. Please test for other combination of Python/OS !