你寫的大多數(shù)邏輯行都包含表達(dá)式。表達(dá)式的一個簡單例子是2 + 3。一個表達(dá)式可分為操作符和操作數(shù)兩部分。 操作符的功能是執(zhí)行一項任務(wù);操作符可由一個符號或關(guān)鍵字代表,如+ 。操作符需要數(shù)據(jù)以供執(zhí)行其功能,這些數(shù)據(jù)名為操作數(shù)。在上面的例子中,2和3是操作數(shù)。 操作符我們在這里簡單地介紹操作符及其用途: 你可在Python解釋器中交互驗證下面給出的例子。例如,驗證2 + 3,在Python解釋器提示符中輸入: >>> 2 + 3 5 >>> 3 * 5 15 >>>
數(shù)學(xué)運算與賦值捷徑對一個變量進(jìn)行運算后再賦值給其自身是常見的,因此對于此類表達(dá)式有對應(yīng)捷徑: 你可將: a = 2; a = a * 3 寫成: a = 2; a *= 3 注意:變量 = 變量 操作符 表達(dá)式變?yōu)榱?TT style="PADDING-BOTTOM: 0px; PADDING-TOP: 0px; PADDING-LEFT: 0px; MARGIN: 0px; PADDING-RIGHT: 0px">變量 操作符= 表達(dá)式 運算順序如果你遇到了類似2 + 3 * 4的表達(dá)式,首先做加法還是乘法?先做乘法,高中數(shù)學(xué)如是說。這意味著乘法運算符比加法運算符有更高的優(yōu)先級。 下表中以從低到高的順序給出了Python中操作符優(yōu)先級列表。給定一個表達(dá)式,Python將會首先計算在此表中靠下的操作符與表達(dá)式,然后計算靠上的操作符與表達(dá)式。 此表取自Python reference manual,包括了所有的運算符。建議使用圓括號標(biāo)注具有較高優(yōu)先級的部分,這可使程序更可讀。詳情請看改變計算順序。
表中仍未接觸到的運算符將會在后續(xù)章節(jié)中說明。 擁有相同優(yōu)先級的運算符位于上表的同一行中,例如+和-擁有相同優(yōu)先級。 改變計算順序使用括號可增加表達(dá)式可讀性。例如2 + (3 * 4)就比需要運算符優(yōu)先級知識的2 + 3 * 4更好理解。但是仍要避免過量使用括號,例如(2 + (3 * 4))。 使用括號還可以改變運算順序,例如在(2 + 3) * 4中括號使表達(dá)式先進(jìn)行加法運算后進(jìn)行乘法運算。 結(jié)合律操作符在優(yōu)先級相同的情況下從左向右計算,例如2 + 3 + 4等價于(2 + 3) + 4。另一些運算符如賦值運算符從右向左計算,例如a = b = c等價于a = (b = c)。 表達(dá)式例子: #!/usr/bin/python # Filename: expression.py length = 5 breadth = 2 area = length * breadth print('Area is', area) print('Perimeter is', 2 * (length + breadth)) 輸出: $ python expression.py Area is 10 Perimeter is 14 工作原理: 矩形的長與寬存儲在同名變量中。我們通過計算面積與周長的表達(dá)式得出這兩個值。我們將表達(dá)式length * breadth的值存儲在變量area中,并使用print函數(shù)打印變量值。在第二種情況中,我們直接使用print函數(shù)打印表達(dá)式2 * (length + breadth)的值。 另外即便我們沒有專門在'Area is'與變量area中加入空格,Python仍美觀地打印出了此輸出。Python自動為我們生成了一個漂亮的輸出格式并因此令程序更可讀:我們不需要擔(dān)心輸出字符串中的空格。這是另一個Python簡化程序員工作的例子。 總結(jié)我們了解了書寫任何程序都需要的磚塊:操作符、操作數(shù)和表達(dá)式。下一步我們將了解如何在程序中使用這三者。 |
|