python中的分数,python求五个分数的平均分数
适合初学者看看。没有深入的知识和语法,大神也能过。
密码
类算术(对象):
def __init__(self,p,q):
self.p=p
self.q=q
//初始化四则运算的分子和分母,P为分子,Q为分母。
def __add__(self,r):
返回算术(self.p * r.q self.q * r.p,self.q * r.q)
//加法运算
def __sub__(self,r):
返回算术(self.p*r.q-self.q*r.p,self.q*r.q)
//减法运算
def __mul__(self,r):
返回算术(self.p*r.p,self.q*r.q)
//乘法运算
def __div__(self,r):
返回算术(self.p*r.q,self.q*r.p)
//除法运算
def __str__(self):
if self.p self.q:
count=self.q
否则:
计数=self.p
定义f(c):
数量=0
对于范围(0,c-1)中的n:
a=自身p/(c-n)
b=自我q/(c-n)
如果a*(c-n)==self.p且b*(c-n)==self.q:
数量=1
self.p,self.q=self.p/(c-n),self.q/(c-n)
c=c/(c -n)
打破;
如果数量==1:
返回f(c)
否则:
如果self.q==1:
返回“% s”%(self . p)
返回 %s/%s%(self.p,self.q)
返回f(计数)
//这里定义一个f()函数的最简单形式来近似计算结果的分数。
内部循环调用用于函数。
注意,函数不能修改它的全局变量,
我是在试错之后才发现这一点的。具体原因还不清楚。
__repr__=__str__
r1=算术(9,10)
r2=算术(1,5)
打印r1 r2
打印r1 - r2
打印r1 * r2
打印r1/r2
#遇到这些-*/符号时,会对应python语法。上面已经重写了相应的语法,它将遵循我们的规则。
这是我第一次在一本短书里发表文章。python是最近才开始学的。许多内部机制还没有被很好地理解,但是学到的知识已经被广泛地应用。如有错误希望大家指正!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。