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

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

广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!

稳了!魔兽国服回归的3条重磅消息!官宣时间再确认!

昨天有一位朋友在大神群里分享,自己亚服账号被封号之后居然弹出了国服的封号信息对话框。

这里面让他访问的是一个国服的战网网址,com.cn和后面的zh都非常明白地表明这就是国服战网。

而他在复制这个网址并且进行登录之后,确实是网易的网址,也就是我们熟悉的停服之后国服发布的暴雪游戏产品运营到期开放退款的说明。这是一件比较奇怪的事情,因为以前都没有出现这样的情况,现在突然提示跳转到国服战网的网址,是不是说明了简体中文客户端已经开始进行更新了呢?