Fraction函數是python中實現分數的一個模塊(module),模塊是由別人寫的,并且可以被拿來直接使用的代碼程序,包括類、函數以及標簽的定義,是python標準函數庫的一部分。使用是必須先插入模塊。
>>> from fractions import Fraction #插入模塊 >>> f =Fraction(1,2) #創建Fraction 類,并初始化為1/2 >>> f #輸出分數類對象Fraction(1, 2)
輸入分數時,Fraction開頭字母必須大寫,否則會報錯。我們對分數進行運算。
>>> Fraction(2,8)+1+1.5 2.75
運算中如果出現float數據類型,最終的結果將是float類型數據。如果運算式中只有integer類型和fraction類型,輸出結果將死fraction類型。
>>> Fraction(2,8)+Fraction(2,5)+3 Fraction(73, 20)
Fraction()方法,非常有意思,可以直接接收分數字符串變成輸入。注意輸入的分數要加引號。
>>> a = Fraction('1/5') >>> a Fraction(1, 5) >>>
直接輸入小數,Fraction方法直接把小數變成分數。
>>> from decimal import Decimal >>> Fraction(1.1) Fraction(11, 10)
把字符串變成小數,需要用到decimal類,然后把小數變成分數。
>>> from decimal import Decimal >>> Fraction(Decimal('1.1')) Fraction(11, 10)
先把1.1字符串變成小數,然后在變成分數。
擴展:
Python: 分數運算
fractions 模塊可以被用來執行包含分數的數學運算
>>> from fractions import Fraction >>> a = Fraction(5, 4) >>> b = Fraction(7, 16) >>> print(a + b) 27/16 >>> print(a * b) 35/64 >>> # Getting numerator/denominator >>> c = a * b >>> c.numerator 35 >>> c.denominator 64 >>> # Converting to a float >>> float(c) 0.546875
在大多數程序中一般不會出現分數的計算問題,但是有時候還是需要用到的。比如,在一個允許接受分數形式的測試單位并以分數形式執行運算的程序中,直接使用分數可以減少手動轉換為小數或浮點數的工作
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
