2015-12-17 18 views
4

在Python 3.x中,__div__()運算符was deprecated in favor of__floordiv__()__truediv__()在Python 3.x中改變了__rdiv __()和__idiv__`運算符嗎?

__rdiv__()__idiv__()運營商仍然用來指的__truediv__()反轉和就地版本?如果是這樣,__floordiv__()的逆向和就地版本的操作員名稱是什麼?

+0

'_rdiv __(...)x .__ rdiv __(y)<==> y/x',您是否嘗試過使用它們? –

+0

https://docs.python.org/3/reference/datamodel.html#emulating-numeric-types –

+0

@ChrisMueller:真的嗎?因爲[這些名字都沒了](http://ideone.com/ptSWUk)。 – user2357112

回答

4

__rdiv____idiv__不再存在。遵循標準格式,新名稱是__rtruediv__,__itruediv__,__rfloordiv____ifloordiv__的明顯選擇。在您關聯的問題的第二個答案中,或者在Python 3解釋器中執行dir(int),可在link中看到。

+1

感謝您的回答。小問題:'__itruediv__'和'__ifloordiv__'因爲整數類是不可變的,所以如果你執行'dir(int)'則不會顯示出來。 –