溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

分?jǐn)?shù)怎么在python中聲明

發(fā)布時間:2020-12-07 09:30:24 來源:億速云 閱讀:169 作者:小新 欄目:編程語言

小編給大家分享一下分?jǐn)?shù)怎么在python中聲明,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

我們知道如果小數(shù)點(diǎn)后面的字?jǐn)?shù)過長,我們會進(jìn)行保留小數(shù)點(diǎn)后位數(shù)的操作。但是這樣會在精準(zhǔn)度上有所差別,當(dāng)然我們也可以通過分?jǐn)?shù)也避免小數(shù)點(diǎn)保留所帶來的不精準(zhǔn)性。不過分?jǐn)?shù)在python中還不能直接使用的,需要借助模塊的實(shí)現(xiàn)。

Python 并不僅僅局限于整數(shù)和浮點(diǎn)數(shù)類型。它可以完成你在高中階段學(xué)過、但幾乎已經(jīng)全部忘光的所有古怪?jǐn)?shù)學(xué)運(yùn)算。

分?jǐn)?shù)就是其中一種。當(dāng)然,分?jǐn)?shù)不能直接聲明,使用時需引入 fractions 模塊。

為定義一個分?jǐn)?shù),創(chuàng)建一個 Fraction 對象并傳入分子和分母。

>>> import fractions
>>> x = fractions.Fraction(1, 3)
>>> x
Fraction(1, 3)

對分?jǐn)?shù)進(jìn)行所有的常規(guī)數(shù)學(xué)計(jì)算。運(yùn)算返回一個新的 Fraction 對象。2 * (1/3) = (2/3)

>>> x * 2
Fraction(2, 3)

Fraction 對象將會自動進(jìn)行約分。(6/4) = (3/2)

>>> fractions.Fraction(6, 4)
Fraction(3, 2)

在杜絕創(chuàng)建以零為分母的分?jǐn)?shù)方面,Python 有著良好的敏感性。

>>> fractions.Fraction(0, 0)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "fractions.py", line 96, in __new__
    raise ZeroDivisionError('Fraction(%s, 0)' % numerator)
ZeroDivisionError: Fraction(0, 0)

實(shí)例:Python定義的矩陣?yán)镉蟹謹(jǐn)?shù),如何讓結(jié)果以分?jǐn)?shù)顯示?就比如array([1/3]),顯示0.333,如何顯示1/3這種分?jǐn)?shù)形式?

>>> from fractions import Fraction
>>> Fraction(1, 3) + Fraction(1, 3)
Fraction(2, 3)
>>> Fraction(0.7)
Fraction(3152519739159347, 4503599627370496)
>>> Fraction(0.75)
Fraction(3, 4)

以上是“分?jǐn)?shù)怎么在python中聲明”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI