Python萌新,遇到这个bug怎么解?

import time
print('这是面积计算器')
choice=input('请输入要计算面积的图形:')
if choice == '三角形':
    def Triangles(a, b):
        return a * b / 2
    a = int(input('请输入三角形的底:'))
    b = int(input('请输入三角形的高:'))
    Triangles(a, b)
    time.sleep(0.5)
    print('三角形的面积是:' + Triangles(a, b))
if choice == '长方形':
    def Rectangularshape(c,d):
        return c*d
    c=int(input('请输入长方形的长:'))
    d=int(input('请输入长方形的宽:'))
    Rectangularshape(c,d)
    time.sleep(0.5)
    print('长方形的面积是:' + Rectangularshape(c,d))
if choice == '正方形':
    def Square(e):
        return e**2
    e=int(input('请输入正方形的边长:'))
    Square(e)
    time.sleep(0.5)
    print('正方形的面积是:' + Square(e))
if choice == '平行四边形':
    def parallelogram(f,g):
        return f*g
    f=int(input('请输入平行四边形的长:'))
    g=int(input('请输入平行四边形的高:'))
    parallelogram(f,g)
    time.sleep(0.5)
    print('平行四边形的面积是:' + parallelogram(f,g))
if choice == '梯形':
    def trapezoid(h,i,j):
        return (h+i)*j/2
    h=int(input('请输入梯形的上底:'))
    i=int(input('请输入梯形的下底:'))
    j=int(input('请输入梯形的高:'))
    trapezoid(h,i,j)
    print('梯形的面积是:' + trapezoid(h,i,j))

加了

print('正方形的面积是:' + Square(e))

后,代码一直提示有bug,也不知道怎么改,求大佬帮帮我

print('正方形的面积是:' + str(Square(e)))

print('正方形的面积是:' + Square(e))

这行代码报错的原因是你尝试将字符串和数字相加,所以报错了,请记住,字符串只能和字符串相加,数字只能和数字相加。

建议你代码这样改:

print(f'正方形的面积是:{ Square(e)}平方米')

f字符串的功能是将{}中的变量的值输出到字符串。这种方式既简洁又方便。

对比一下我不推荐的这种代码:

print('正方形的面积是:'+str(Square(e))+'平方米')

这种方式有2个缺点,一是不简洁二是效率低。

因为‘三角形的面积是:’是字符串,而Triangles(a, b)是数字,两者不能直接相加
建议改成:print(f'三角形的面积是:{Triangles(a, b)}')

字符串和整型不能相加,还有你把所有函数的代码放到另一个模块在import进来,可以更加 整洁,不要把代码都放一起

感谢各位大佬的帮助

代码改出来了