python分数表示方式和写法

yipeiwu_com6年前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

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

相关文章

Numpy 改变数组维度的几种方法小结

来自 《Python数据分析基础教程:Numpy 学习指南(第2版)》 Numpy改变数组维度的方法有: reshape() ravel() flatten() 用元组设置维度...

对tensorflow 的模型保存和调用实例讲解

我们通常采用tensorflow来训练,训练完之后应当保存模型,即保存模型的记忆(权重和偏置),这样就可以来进行人脸识别或语音识别了。 1.模型的保存 # 声明两个变量 v1 = t...

举例讲解Python的lambda语句声明匿名函数的用法

所谓匿名函数,即是不需要定义函数,像表达式一样使用,不需要函数名(很多时候名字让我很困扰),一些简单的函数简单化, 举个例子 我需要两个整数相加的函数,通常是这么定义的 def ad...

基于python 微信小程序之获取已存在模板消息列表

前言: 为了获取一定高级操作,如:微信模板消息(xiao,xin)推送,把消息推送给用户,或者是获取用户授权信息都需要用到access token,有效期为两个小时? 过了两个小时怎么办...

Python输出由1,2,3,4组成的互不相同且无重复的三位数

题目:有四个数字:1、2、3、4,能组成多少个互不相同且无重复数字的三位数?各是多少? 程序分析:可填在百位、十位、个位的数字都是1、2、3、4。组成所有的排列后再去 掉不满足条件的排...