欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

Python里的分数计算技巧

最编程 2024-08-05 11:02:12
...

分数运算

分数是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字符串变成小数,然后在变成分数。

举例

计算
S=1+\dfrac{1}{2}+\dfrac{1}{3}+...+\dfrac{1}{9}

>>> s =1
>>> for i in range(1,10):
...     s=s+Fraction(1,i)
...
>>> print(s)
9649/2520