Python __ 处理分数类Fraction

概述

Python标准库fractions中Fraction类
能够自动对分子和分母进行约分,当分子分母中有负号时,自动约分并最终将负号归于分子

导入

from fractions import Fraction

实例化

Fraction类实例可以由一对整数,一个分数,或者一个字符串构建而成。

# 传入分子和分母
class fractions.Fraction(numerator=0, denominator=1)
# 用另一个Fraction示例进行初始化
class fractions.Fraction(other_fraction)
# 传入浮点数
class fractions.Fraction(float)
class fractions.Fraction(decimal)
class fractions.Fraction(string)

方法:

自动约分

Fraction类能够自动对分子和分母进行约分,当分子分母中有负号时,自动约分并最终将负号归于分子

Fraction(10, -5)
# 结果:-2/1

二元运算返回分数:

  1. 进行四则运算,最后的结果以分数(有理数)显示
>>> Fraction(1,3) + Fraction(1,6)
1/2
#一个分数加一个整数得到一个分数:
>>> Fraction(1,2) + 1
3/2
#一个分数加一个浮点数得到一个浮点数:
>>> Fraction(1,2) + 1.6
2.1
  1. 也支持关系运算、pickle模块、copy模块和哈希值的计算等

Fraction属性

.numerator:获取最简分数形式的分子

.denominator:获取最简分数形式的分母

from fractions import Fraction 

f = Fraction(4,8)
print(f.numerator)
print(f.denominator)
"""
输出结果:
1
2
"""
posted @ 2022-06-01 09:37  kingwzun  阅读(384)  评论(0编辑  收藏  举报