天天看點

《Python遊戲程式設計快速上手》——2.2 計算表達式

本節書摘來自異步社群《python遊戲程式設計快速上手》一書中的第2章,第2.2節,作者[美] al sweigart(斯維加特),李強 譯,更多章節内容可以通路雲栖社群“異步社群”公衆号檢視。

2.2 計算表達式

當計算機求解表達式10 + 5并且得到值15的時候,它就已經計算了這個表達式。計算一個表達式就是把表達式規約為一個數字,就像解答一道數學題而把問題簡化成一個數字一樣:數字就是答案。表達式10 + 5和表達式10 + 3 + 2的計算結果都是15。

表達式可以是任意大小的,但它們總是會求解得到一個數字。即便單個值也可以是表達式:表達式15的計算結果就是值15。例如,表達式8 * 3 / 2 + 2 + 7 -9,通過如下步驟,其計算結果是值12.0。

在互動式shell中看不到所有這些步驟。互動式shell對表達式進行運算,并且隻把結果展示給我們。

需要注意的是,除法操作符(/)的運算結果是一個浮點數,是以24/2的結果是12.0。使用浮點數的數學運算,其結果也是浮點數,是以12.0 +2的結果是14.0。

文法錯誤

如果在互動式shell中輸入5+,将會得到一條錯誤消息。

産生這個錯誤,是因為5+不是一個表達式。表達式通過操作符來連接配接值。但是加法操作符期待+後邊有一個值。當漏掉這個值時,就會出現一個錯誤。

syntaxerror表示python不了解這條指令,因為你的輸入不正确。很多時候,從事計算機程式設計不隻是告訴計算機要做什麼,還要知道如何告訴它。

但是,不要擔心出錯。錯誤并不會對計算機造成危害。隻要在互動式shell中的下一個>>>提示符處,重新輸入正确的指令即可。