猫史档案馆


【Python作品分享】有bug的计算器,求救!【求助帖】

用户:李梦梵fan李梦梵fan查看:0 回复:1 评论:0 创建时间:2021-12-03T18:53:00


【作品展示】

center_image

 

【作品介绍】

积木好好的,代码也好好的,偏偏运行不了

81行代码:elif (( '**' or '^' ) in a:

 

【作品源代码】

import math


while True:
    print('注意事项:1、分数如3/2要写成2分之3;2、平方数和整除不支持分数。')
    try:
        a = input('请输入算式')
        if ('+' in a):
            a = a.split('+')
            if ('分之' in a[0]):
                d = a[0].split('分之')
                h = int(a[2])
                if ('分之' in a[2]):
                    e = a[2].split('分之')
                    b = int(d[0])
                    c = int(d[1])
                    f = int(e[0])
                    g = int(e[1])
                    print((((b * f + '分之') + c * f) + g * b))
                else:
                    b = int(d[0])
                    c = int(d[1])
                    print(((b + '分之') + (h * c + c)))
            elif ('分之' in a[2]):
                e = a[2].split('分之')
                f = int(e[0])
                g = int(e[1])
                h = int(a[0])
                print((((f + '分之') + h * g) + g))
            else:
                b = float(a[0])
                c = float(a[1])
                print((b + c))
        elif ('-' in a):
            a = a.split('-')
            if ('分之' in a[0]):
                d = a[0].split('分之')
                h = int(a[2])
                if ('分之' in a[2]):
                    e = a[2].split('分之')
                    b = int(d[0])
                    c = int(d[1])
                    f = int(e[0])
                    g = int(e[1])
                    print((((b * f + '分之') + c * f) - g * b))
                else:
                    b = int(d[0])
                    c = int(d[1])
                    print(((b + '分之') + (c - h * c)))
            elif ('分之' in a[2]):
                e = a[2].split('分之')
                f = int(e[0])
                g = int(e[1])
                h = int(a[0])
                print((((f + '分之') + h * g) - g))
            else:
                b = float(a[0])
                c = float(a[1])
                print((b * c))
        elif (('**' or '^') in a):
            a = a.split('**')
            b = float(a[0])
            c = float(a[1])
            print((b ** c))
        elif ('*' in a):
            a = a.split('*')
            if ('分之' in a[0]):
                d = a[0].split('分之')
                h = int(a[2])
                if ('分之' in a[2]):
                    e = a[2].split('分之')
                    b = int(d[0])
                    c = int(d[1])
                    f = int(e[0])
                    g = int(e[1])
                    print(((b * f + '分之') + c * g))
                else:
                    b = int(d[0])
                    c = int(d[1])
                    print(((b + '分之') + (h * c ))
            elif ('分之' in a[2]):
                e = a[2].split('分之')
                f = int(e[0])
                g = int(e[1])
                h = int(a[0])
                print(((f + '分之') + h * g))
            else:
                b = float(a[0])
                c = float(a[1])
                print((b * c))
        elif ('//' in a):
            a = a.split('//')
            b = float(a[0])
            c = float(a[1])
            print(math.floor(b / c))
        elif ('/' in a):
            a = a.split('/')
            if ('分之' in a[0]):
                d = a[0].split('分之')
                h = int(a[2])
                if ('分之' in a[2]):
                    e = a[2].split('分之')
                    b = int(d[0])
                    c = int(d[1])
                    f = int(e[0])
                    g = int(e[1])
                    print(((b * g + '分之') + c * f))
                else:
                    b = int(d[0])
                    c = int(d[1])
                    print(((b * h + '分之') + c))
            elif ('分之' in a[2]):
                e = a[2].split('分之')
                f = int(e[0])
                g = int(e[1])
                h = int(a[0])
                print(((f + '分之') + h * g))
            else:
                b = float(a[0])
                c = float(a[1])
                print((b / c))
        else:
            pass
    except :
        print('出错了')

 

【提示】

部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:

https://python.codemao.cn


回复

上一页1 页 / 共 1下一页
a一只打工鸡a一只打工鸡

写成 '**' in a or '^' in a

点赞0


评论