#-*-coding:utf-8-*-
'''
Created on 2016年3月21日
@author: Zroad
'''
from fractions import Fraction
"""
一、分数对象基础
"""
#1、创建分数对象
x = Fraction(1,3)
y = Fraction(4,6)
print "x=",x #1/3
print "y=",y #2/3
print "type(x)=",type(x) #<class 'fractions.Fraction'>
#2、分数对象用于数学表达式
print "x+y=", x+y #1
print "x-y=", x-y #-1/3
print "x*y=", x*y #2/9
print "x/y=",x/y #1/2
#3、通过浮点数创建分数对象,类似小数
print Fraction(.25) #1/4
print Fraction(1.75) #7/4
print Fraction(0.25) + Fraction(1.75) #2
#4、分数与小数间的相互转换
#将小数转换为分数
print (2.5).as_integer_ratio() #结果为分子、分母的元组,(5,2)
print Fraction(*(2.5).as_integer_ratio()) #5/2
print Fraction.from_float(2.5) #5/2
#5、分数对象与整数、浮点数间的混合运算
"""
Fraction + int -> Fraction
Fraction + float - > float
Fraction + Fraction -> Fraction
"""
f = Fraction(1,3)
print f + 1 #4/3
print f + 0.1 #0.4333333333333
print f + f #2/3
#6、求分数的最近值
a = Fraction(22517998136853479,13510798882111488)
print a.limit_denominator(10)
print a.limit_denominator(20) #求最接近的分数值,最大分母为传入的参数,5/3
print a.limit_denominator(2) # 3/2
分数对象Fraction创建、转换及混合运算
最新推荐文章于 2022-09-19 22:33:14 发布