Ответ от veganaiZe выдает KeyError вне IDLE с python 3.6.3. Эту проблему можно решить, заменив if sys.modules['idlelib']:
на if 'idlelib' in sys.modules:
, как показано ниже.
import argparse
# Check if we are using IDLE
if 'idlelib' in sys.modules:
# IDLE is present ==> we are in test mode
print("""====== TEST MODE =======""")
args = parser.parse_args([list of args])
else:
# It's command line, this is production mode.
args = parser.parse_args()