Python报错:无法将序列与非整数类型str相乘的问题求助
解决“无法将序列与非整数类型str相乘”报错问题
你遇到的报错是因为字符串类型不能和另一个字符串相乘——Python里字符串只有和整数相乘才有意义(比如"abc"*3会得到"abcabcabc"),两个字符串相乘是不允许的操作。
你的代码里把输入的长度和宽度都转成了str类型,这就导致width * length触发了这个错误。另外还有两个小问题:
- 你把计算结果放到了列表里(
[(width * length)+"cm"]),后面用字符串和列表拼接也会报错 - 面积单位应该用
cm²更准确
修正后的代码如下:
# 把输入转成浮点型,支持整数和小数输入 length = float(input("Enter length (cm): ")) width = float(input("Enter the width (cm): ")) # 数值计算面积 area = length * width # 用f-string格式化输出,简洁又不易出错 print(f"The area of the rectangle is {area} cm²")
如果只需要处理整数输入,也可以把float换成int,但用float兼容性更强。
内容的提问来源于stack exchange,提问作者Purpled
相关产品推荐
相关产品推荐

