
打開我們的命令列,輸入 python ,我們會進入 python 的互動模式,

當我們想退出 python ,回傳我們的 shell 時,你將如何退出?

如上,兩個行之有效的方法是輸入 exit() 或者 quit() 來中止這個 python 行程,
此外,還有一種更為人所熟知的方式: 使用快捷鍵退出 ,而這個操作在 Windows 和 Linux 兩個平臺是不同的——前者使用 Ctrl + z 而后者使用 Ctrl + d ,但是,為什么不同呢?
EOF, end of file
這就不得不提起檔案結束符 EOF (end of file) ,
在 C 語言的 stdio.h 中, EOF 實際上就是 -1 :
#define EOF (-1)
C 語言之父肯·湯普森與丹尼斯·里奇恰好也是 Unix 的締造者,而 Unix 深遠地影響了作業系統的發展:無論是 Windows 還是 Linux ,
當我們接收輸入的“程式”接收到 -1 這個值時,程式便會知道:哦,這不就是 EOF 老兄嗎!現在已經抵達檔案的最末尾(end of file)了,我的接收輸入的作業也就完成了,可以下班了!
咱們來看一個簡單的 C 語言例子,


但注意,-1 并不是數值物件,而就是 -1 這個輸入值,我們無法通過鍵盤上的 -1 直接鍵入,如果想要鍵入 -1 ,那么就需要:
- 在
Windows上鍵入Ctrl + z - 在
Linux上鍵入Ctrl + d
所以,你也就知道為什么 在 Windows 下用 Ctrl+Z 退出 Python 而 Linux 下用 Ctrl+D 了吧!
一些補充
有朋友問了,Ctrl + c 也是殺死行程,為啥 Ctrl + c 不行呢?
我的理解是,在 python 的互動視窗里, Ctrl + c 用于殺死 python 的子行程,比如你進入死回圈了,

如果你真的想通過殺死行程的方式來退出 python ,那我這里有一套 powershell 和 shell 的命令,
tasklist | where {$_ -match "python"}
kill <python行程PID>

ps aux | grep python
kill -9 <python行程PID>


轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/308084.html
標籤:Windows
上一篇:備份onetab資料
