阅读背景:

属性错误:“str”对象在第10行没有属性“n”。

来源:互联网 
class Natural:

    def __init__(self,x):
        self.n=str(x)

    def __add__(self,x):
        i=1
        suma=""
        a=0
        if len(self.n)==len(x.n):
            l=len(self.n)
        elif len(self.n)>len(x.n):
            l=len(self.n)
        elif len(self.n)<len(x.n):
            l=len(x.n)
        if len(self.n)>len(x.n):
            while True:
                x.n="0"+x.n
                if len(self.n)==len(x.n):break
        elif len(self.n)<len(x.n):
            while True:
                self.n="0"+self.n
                if len(self.n)==len(x.n):break
        while i<=l:
            s=(int(self.n[l-i])+int(x.n[l-i])+a)
            u=s%10
            suma=str(u)+suma
            a=s/10
            i=i+1

        if a==0:
            return suma
        elif a==1:
            return str(a)+suma
    def __mul__(self,x):
        i=1
        if len(self.n)==len(x.n):
            c=int(self.n)
        elif len(self.n)>len(x.n):
            c=int(x.n)
        elif len(self.n)<len(x.n):
            c=int(self.n)
        if len(self.n)>len(x.n):
            s=Natural(self.n)
            mult=""
            while i<=c:
                mult=s+mult
                i=i+1
            return mult
        elif len(self.n)<len(x.n):
            s=Natural(x.n)
            mult=""
            while i<=c:
                mult=s+mult
                i=i+1
            return mult

    def __gt__(self,x):
        return self.n>x.n

    def __lt__(self,x):
        return self.n<x.n

    def __eq__(self,x):
        return self.n==x.n

    def __str__(self):
        return str(self.n)

    def __len__(self):
        return len(self.n)
class Natural:

    def __init__(self,x):
     



你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: