python 算術運算

1. 算術運算符與優先級

# -*- coding:utf-8 -*-

# 運算符含有+,-,*,/,**,//,%
# ** 表示^ , 也就是次方
a = 2 ** 4
print '2 ** 4 = ', a

a = 16 / 5
print '16 / 5 = ', a

a = 16.0 / 5
print '16.0 / 5 = ', a

# 結果再進行一次floor
a = 16.0 // 5.0
print '16.0 // 5.0 = ', a

a = 16 // 5
print '16 // 5 = ', a
# 在Python 2.7中,’/’執行傳統除法,若是操做數都是整數的話,執行截斷的整數除法(即對於結果只保留整數部分),不然,執行浮點除法(保留餘數);’//’執行Floor除法,與Python3.0同樣,對於整數執行截斷除法,浮點數執行浮點除法。
# 在Python 3.0中,’/’老是執行真除法,無論操做數的類型,都會返回包含任何餘數的浮點結果;’//’執行Floor除法,截除掉餘數而且針對整數操做數返回一個整數,若是有任何一個操做數是浮點數,則返回一個浮點數。
a = -16 // 5
print '-16 // 5 = ', a
# 往下取整, 返回不大於x的整數

結果:
2 ** 4 =  16
16 / 5 =  3
16.0 / 5 =  3.2
16.0 // 5.0 =  3.0
16 // 5 =  3
-16 // 5 =  -4


# 運算符的優先級
# + - 小於 * /
a = 5 * 6 // 4
print '5 * 6 // 4 = ', a # * 等同於 //
a = 5 * 2 ** 2
print '5 * 2 ** 2 = ', a # ** 優於 *
a = 5 * 3 % 2
print '5 * 3 % 2 = ', a # * 等同於 %
# 因此加括號吧

結果:
5 * 6 // 4 =  7
5 * 2 ** 2 =  20
5 * 3 % 2 =  1

 整數運算

python中整數運算很神奇,不限制長度,也就是沒有溢出這種說法。不過在64位能表示的狀況下,數字的類型爲int,超過2^63次方以後就變成了long類型。python

並且目前所瞭解到的,整數的各種運算速度都還挺快,都是通過優化的。優化

浮點數運算

python中的浮點數運算就能夠等於double的運算了。spa

相關文章
相關標籤/搜索