斜槓我碰到這個示例代碼來自一個radix sort:兩個前鋒在Python
def getDigit(num, base, digit_num):
# pulls the selected digit
return (num // base ** digit_num) % base
什麼是「//
」做在Python?
斜槓我碰到這個示例代碼來自一個radix sort:兩個前鋒在Python
def getDigit(num, base, digit_num):
# pulls the selected digit
return (num // base ** digit_num) % base
什麼是「//
」做在Python?
//
是地板師的操作員。它產生其操作數的商的底線,對整數操作數沒有浮點舍入。這有時也稱爲整數除法,即使您可以將它與浮點數一起使用,因爲默認情況下用整數除以/
來完成此操作。
在Python 3中,即使兩個操作數都是整數,普通的/
除法運算符也會返回浮點值,因此需要使用不同的運算符進行平面分割。這不同於Python 2,其中/
如果兩個操作數都是整數,並且浮點除法(如果至少一個操作數是浮點值),則執行floor division。
//
運算符最初是在Python 2.2中進行前向兼容性時才確定的,因爲Python 3應該具備這種新功能。連同啓用通過from __future__ import division
(Python 2.2中還引入)是Python 3的行爲的能力,這使您可以編寫Python 3兼容的代碼在Python 2
要通過@DSM添加到評論中,''//'表示python2.x中的整數除法。如果你想做整數除法,你應該使用''而不是'/'而不管你正在使用的是什麼版本的Python。 – mgilson
它向負無窮(即比例的底面)四捨五入。對於負數,它與C中的整數除法不同,該整數除以零。 http://python-history.blogspot.com/2010/08/why-pythons-integer-division-floors.html –
你可以只是嘗試:
In []: 5/2
Out[]: 2
In []: 5.0/2
Out[]: 2.5
In []: 5.0//2
Out[]: 2.0
這應該是不言自明的。
(這是在Python 2.7。)
-1:找出問題的一種方法是通過試驗和錯誤。另一個是問。 – DilithiumMatrix
回答問題的一種方法是直接給出答案,另一種方法是指向方向。我做了兩個順便說一句。 – LWZ
我只是想給你一個downvote和一些反饋人的解釋。基於-1的答案,與+13的接受...我認爲很多人都認爲你實際上都沒有。 (直接或方向)。 – DilithiumMatrix
的可能的複製[什麼在Python 「可變// =值」 語法意思?](http://stackoverflow.com/questions/40274205/what -does-the-variable-a-value-syntax-mean-in-python) – smci