编辑:在这种情况下KeyboardInterrupt,您显然甚至不希望它读取行或句柄,因此您需要做的是检查 empty stdin。检查您是否是终端并按编辑后的示例所示通过。sys.stdin是类文件。尝试:if not sys.stdin.isatty(): data = sys.stdin.readlines() # Do something with data如果你没有运行它,stdin我认为它不会像以前那样挂起......因为sys.stdin它将是空的。然后该功能应继续。