python分?jǐn)?shù)表示方式和寫法
Fraction函數(shù)是python中實(shí)現(xiàn)分?jǐn)?shù)的一個(gè)模塊(module),模塊是由別人寫的,并且可以被拿來(lái)直接使用的代碼程序,包括類、函數(shù)以及標(biāo)簽的定義,是python標(biāo)準(zhǔn)函數(shù)庫(kù)的一部分。使用是必須先插入模塊。
>>> from fractions import Fraction #插入模塊 >>> f =Fraction(1,2) #創(chuàng)建Fraction 類,并初始化為1/2 >>> f #輸出分?jǐn)?shù)類對(duì)象Fraction(1, 2)
輸入分?jǐn)?shù)時(shí),F(xiàn)raction開頭字母必須大寫,否則會(huì)報(bào)錯(cuò)。我們對(duì)分?jǐn)?shù)進(jìn)行運(yùn)算。
>>> Fraction(2,8)+1+1.5 2.75
運(yùn)算中如果出現(xiàn)float數(shù)據(jù)類型,最終的結(jié)果將是float類型數(shù)據(jù)。如果運(yùn)算式中只有integer類型和fraction類型,輸出結(jié)果將死fraction類型。
>>> Fraction(2,8)+Fraction(2,5)+3 Fraction(73, 20)
Fraction()方法,非常有意思,可以直接接收分?jǐn)?shù)字符串變成輸入。注意輸入的分?jǐn)?shù)要加引號(hào)。
>>> a = Fraction('1/5') >>> a Fraction(1, 5) >>>
直接輸入小數(shù),F(xiàn)raction方法直接把小數(shù)變成分?jǐn)?shù)。
>>> from decimal import Decimal >>> Fraction(1.1) Fraction(11, 10)
把字符串變成小數(shù),需要用到decimal類,然后把小數(shù)變成分?jǐn)?shù)。
>>> from decimal import Decimal >>> Fraction(Decimal('1.1')) Fraction(11, 10)
先把1.1字符串變成小數(shù),然后在變成分?jǐn)?shù)。
擴(kuò)展:
Python: 分?jǐn)?shù)運(yùn)算
fractions 模塊可以被用來(lái)執(zhí)行包含分?jǐn)?shù)的數(shù)學(xué)運(yùn)算
>>> 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
在大多數(shù)程序中一般不會(huì)出現(xiàn)分?jǐn)?shù)的計(jì)算問(wèn)題,但是有時(shí)候還是需要用到的。比如,在一個(gè)允許接受分?jǐn)?shù)形式的測(cè)試單位并以分?jǐn)?shù)形式執(zhí)行運(yùn)算的程序中,直接使用分?jǐn)?shù)可以減少手動(dòng)轉(zhuǎn)換為小數(shù)或浮點(diǎn)數(shù)的工作
- Python中矩陣創(chuàng)建和矩陣運(yùn)算方法
- Python獲取二維矩陣每列最大值的方法
- Python編程給numpy矩陣添加一列方法示例
- Python的numpy庫(kù)中將矩陣轉(zhuǎn)換為列表等函數(shù)的方法
- Python numpy中矩陣的基本用法匯總
- Python 使用Numpy對(duì)矩陣進(jìn)行轉(zhuǎn)置的方法
- Python矩陣常見運(yùn)算操作實(shí)例總結(jié)
- python實(shí)現(xiàn)矩陣乘法的方法
- Python實(shí)現(xiàn)小數(shù)轉(zhuǎn)化為百分?jǐn)?shù)的格式化輸出方法示例
- python用分?jǐn)?shù)表示矩陣的方法實(shí)例
相關(guān)文章
高性能web服務(wù)器框架Tornado簡(jiǎn)單實(shí)現(xiàn)restful接口及開發(fā)實(shí)例
Tornado和現(xiàn)在的主流Web服務(wù)器框架(包括大多數(shù)Python的框架)有著明顯的區(qū)別:它是非阻塞式服務(wù)器,而且速度相當(dāng)快。得利于其 非阻塞的方式和對(duì)epoll的運(yùn)用,Tornado每秒可以處理數(shù)以千計(jì)的連接,這意味著對(duì)于實(shí)時(shí)Web服務(wù)來(lái)說(shuō),Tornado是一個(gè)理想的Web框架。2014-07-07Python使用urllib模塊的urlopen超時(shí)問(wèn)題解決方法
這篇文章主要介紹了Python使用urllib模塊的urlopen超時(shí)問(wèn)題解決方法,本文使用socket模塊中的setdefaulttimeout函數(shù)解決了超時(shí)問(wèn)題,需要的朋友可以參考下2014-11-11Python列表切片操作實(shí)例探究(提取復(fù)制反轉(zhuǎn))
在Python中,列表切片是處理列表數(shù)據(jù)非常強(qiáng)大且靈活的方法,本文將全面探討Python中列表切片的多種用法,包括提取子列表、復(fù)制列表、反轉(zhuǎn)列表等操作,結(jié)合豐富的示例代碼進(jìn)行詳細(xì)講解2024-01-01Python常見庫(kù)matplotlib學(xué)習(xí)筆記之畫圖中各個(gè)模塊的含義及修改方法
matplotlib是python最著名的繪圖庫(kù),它提供了一整套和matlab相似的命令A(yù)PI,十分適合交互式地進(jìn)行制圖,下面這篇文章主要給大家介紹了關(guān)于Python常見庫(kù)matplotlib學(xué)習(xí)筆記之畫圖中各個(gè)模塊的含義及修改方法的相關(guān)資料,需要的朋友可以參考下2023-05-05Python 用turtle實(shí)現(xiàn)用正方形畫圓的例子
今天小編就為大家分享一篇Python 用turtle實(shí)現(xiàn)用正方形畫圓的例子,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-11-11全面了解Python環(huán)境配置及項(xiàng)目建立
下面小編就為大家?guī)?lái)一篇全面了解Python環(huán)境配置及項(xiàng)目建立。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-06-06python使用rstrip函數(shù)刪除字符串末位字符
rstrip函數(shù)用于刪除字符串末位指定字符,默認(rèn)為空白符,這篇文章主要介紹了python使用rstrip函數(shù)刪除字符串末位字符的方法,需要的朋友可以參考下2023-04-04