请问如何用Python在计算时设定计算的最大位数呢

用Python制作计算器过程中 请问如何设定计算的最大位数为64位 如果超过位数则返回uplimit呢?

img

给个例子参考:

def calculate(n):
    if len(str(n))>64:
        return 'UPLIMIT'
    else:
        return len(str(n))
n = 1
for i in range(1,101):
    n = n *i
print(calculate(n))

img

加个判断, 先用str(num)转换为字符串,然后判断字符串长度
代码如下

num = 1234567890123456789012345678901234567890123456789012345678901234567890

if len(str(num)) > 64:
    print('UPLIMIT')

举个例子

def cal(data):
    if len(data) >= 64:
        print("uplimit")
        retrun -1
    else:

data = input()




为什么都一个个转 str 再 len 。。。这样负数和浮点数是会出问题的。因为 负号 和 小数点都算在 len 里

明明可以 if abs(n) >= 1e64

abs 是取绝对值,1e64 是科学计数法的写法,表示 1 * 10的64次方

数据转成字符串,str()函数,计算长度len(),判断,搞定