Linux中结束Python程序最常用方法是Ctrl+C发送SIGINT信号;交互式环境用Ctrl+D退出;无响应时可用Ctrl+Z暂停后kill,后台进程需ps查PID再kill,脚本内推荐sys.exit()优雅退出。

在 Linux 中运行 Python 程序后,结束它的方式取决于运行方式和当前状态。最常用、最直接的方法是使用快捷键 Ctrl + C —— 这会向当前前台进程发送 SIGINT 信号,大多数 Python 脚本(尤其是含循环、输入等待或网络请求的)会响应并退出。
终端中直接运行 python 或 python3 命令时
如果你是这样启动的:
python3 script.py
或进入交互式解释器:
python3
那么:
立即学习“Python免费学习笔记(深入)”;
- 运行脚本中:按 Ctrl + C 可中断执行(如卡在
input()、time.sleep()或无限循环里); - 在交互式 Python 提示符(
>>>)下:按 Ctrl + D(EOF)可安全退出解释器; - 若程序无响应且 Ctrl+C 无效,可尝试 Ctrl + Z 暂停进程,再用
kill %1或kill彻底终止。
后台运行的 Python 进程怎么结束
如果用了 &、nohup 或 screen/tmux 启动,它不在前台,无法用 Ctrl+C。此时需查进程并手动杀掉:
- 用
ps aux | grep python找出目标进程的 PID; - 确认无误后,执行
kill(温和终止); - 若不响应,加
-9强制:kill -9; - 也可一键杀所有匹配的 Python 进程(谨慎使用):
pkill -f "script.py"或killall python3(可能误杀其他 Python 程序)。
Python 脚本内主动退出的方法
写脚本时,可通过代码控制退出逻辑:
- 调用
exit()、sys.exit()或os._exit()(三者行为略有不同,推荐sys.exit()); - 捕获
KeyboardInterrupt处理 Ctrl+C,实现优雅退出:
try:
while True:
time.sleep(1)
except KeyboardInterrupt:
print("已退出")
sys.exit(0)
使用 IDE 或编辑器运行时(如 VS Code、PyCharm)
这类工具通常提供图形化“停止”按钮(红色方块图标),点击即可终止当前运行任务。底层仍是向进程发信号,效果等同于终端中的 kill。注意:某些调试模式下需额外点“断开调试”才能完全释放端口或资源。











