简介:fractions 模块提供了分数类型的支持。可以同时提供分子(numerator)和分母(denominator)给构造函数用于实例化Fraction类,但两者必须同时是int类型或者numbers.Rational类型,否则会抛出类型错误。当分母为0,初始化的时候会导致抛出异常ZeroDivisionError。
相关攻略:
源码:
# -*- coding: utf-8 -*-
# time: 2022/6/1 15:23
# file: fractions_demo.py
# author: tom
# 公众号: 玩转测试开发
import fractions
def get_fraction():
"""
1 / 2 = 1 / 2
2 / 3 = 2 / 3
4 / 8 = 1 / 2 # 最后的分数 4/8,它会自动解析为最低形式的1/2
"""
for num, decimal in [(1, 2), (2, 3), (4, 8)]:
ft = fractions.Fraction(num, decimal)
print(f'{num}/{decimal} = {ft}')
def float2fraction():
"""
0.33 = 33/100
4.5 = 9/2
5e-1 = 1/2
"""
for decimal in ['0.33', '4.5', '5e-1']:
ft = fractions.Fraction(decimal)
print(f'{decimal} = {ft}')
if __name__ == '__main__':
get_fraction()
print("*" * 30)
float2fraction()
微信公众号:玩转测试开发
欢迎关注,共同进步,谢谢!