python分数表示方式和写法

yipeiwu_com5年前Python基础

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

在大多数程序中一般不会出现分数的计算问题,但是有时候还是需要用到的。比如,在一个允许接受分数形式的测试单位并以分数形式执行运算的程序中,直接使用分数可以减少手动转换为小数或浮点数的工作

相关文章

深入浅析python3中的unicode和bytes问题

最近写了一些python3程序,四处能看到bytes类型,而它并不存在于python2中,这也是python3和python2显著区别之一。 以前在写python2代码的时候,经常会遇到...

python+OpenCV实现车牌号码识别

python+OpenCV实现车牌号码识别

基于python+OpenCV的车牌号码识别,供大家参考,具体内容如下 车牌识别行业已具备一定的市场规模,在电子警察、公路卡口、停车场、商业管理、汽修服务等领域已取得了部分应用。一个典型...

Python中使用 Selenium 实现网页截图实例

Selenium 是一个可以让浏览器自动化地执行一系列任务的工具,常用于自动化测试。不过,也可以用来给网页截图。目前,它支持 Java、C#、Ruby 以及 Python 四种客户端语言...

FFrpc python客户端lib使用解析

摘要: Ffrpc可以很方便的构建c++ server, 在网游服务器程序开发中,进程间通讯非常的重要,比如gateserver和gameserver或dbserver之间的通信。而f...

浅谈python 线程池threadpool之实现

首先介绍一下自己使用到的名词: 工作线程(worker):创建线程池时,按照指定的线程数量,创建工作线程,等待从任务队列中get任务; 任务(requests):即工作线程处理的任务,任...