Python不保證使用分號來結束語句。那么為什么允許(以下)呢?import pdb; pdb.set_trace()
3 回答

炎炎設計
TA貢獻1808條經驗 獲得超4個贊
Python并不需要分號來終止語句。如果您希望將多個語句放在同一行上,則可以使用半冒號來分隔語句。
現在,為什么允許這樣做?這是一個簡單的設計決定。我認為Python不需要這種分號的東西,但是有人認為將其添加到語言中會很好。

大話西游666
TA貢獻1817條經驗 獲得超14個贊
口譯中的分號
閱讀了答案之后,我仍然想念使用分號的一個重要方面,可能是唯一真正起作用的方面。
當您在解釋器REPL(Python交互式外殼,IDLE,ipython)中工作時,最后一個表達式的值將顯示在屏幕上,通常這是預期的行為。
使用表達式產生副作用
但是在某些情況下,您只希望評估表達式的副作用,例如,查看用繪制的模擬結果matplotlib。
在這種情況下,您(可能)不想看到某些對象的屏幕,repr這些matplotlib對象有時是通過調用matplotlib函數返回的,并且您可能的一種方法是將分號附加到過于冗長的語句中,即由兩個表達式(matplotlib調用和一個null語句)組成,因此復合表達式的值是None,解釋器不會在屏幕上顯示任何內容(另一種可能性是賦值,例如,_ = plot(...)但我發現它更具侵入性)。
個人評論
恕我直言,在IPyton筆記本電腦問世之后,使用分號來抑制解釋器中不需要的輸出已變得越來越重要,IPyton筆記本允許保存解釋器會話的輸入和輸出(包括圖形輸出),以供文檔記錄和最終重用。
添加回答
舉報
0/150
提交
取消