Python TypeError: can't multiply sequence by non-int of type 'str'

当我在Python环境下运行如下代码时候提示“TypeError: can’t multiply sequence by non-int of type ‘str’”翻译过来大概意思为“类型错误:不能将序列乘以类型为“str”的非int类型”

a = input('number1 is ')
b = input('number2 is ')
print('a * b =',a*b)

input()函数输入的是字符串格式,所以自己在键盘输入的整数其实并不是正整数,而是字符串形式。所以在执行语句“print(‘a * b =’,a*b)”会报错。因为number1和number2都是字符串形式,不可以相乘。

a = int(input('number1 is '))
b = int(input('number2 is '))
print('a * b =',a*b)

正确的定义输入的类型为整数型后,这个简单的小程序运行正常了。

赞(5) 打赏
版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《Python TypeError: can't multiply sequence by non-int of type 'str'》
文章链接:https://www.kelephant.com/problems/1879.html
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。

登录

找回密码

注册