Jupyter Notebook中Python乘法运算结果异常求助
解决Python中数值乘法变成字符串拼接的问题
嘿,这个小坑我刚入门Python的时候也踩过!咱们来一步步理清问题和解决办法:
问题根源
input()函数获取到的用户输入默认是字符串类型,不是数值类型。所以当你执行num*2时,Python会按照字符串的规则处理——字符串乘以整数就是重复拼接该字符串,比如"4" * 2自然得到"44",而不是数值运算的8。
修复方案
只需要把输入的字符串转换成数值类型就行,整数用int(),如果要支持小数就用float()。修改后的代码如下:
num = int(input("Enter a number:")) # 将输入转为整数类型 doub = num * 2 print("Double of {0}, is {1}".format(num, doub))
现在输入4,程序就会输出Double of 4, is 8,完全符合你的预期啦!
额外小提示
如果担心用户输入非数字内容导致报错,可以简单加个异常处理(新手阶段先掌握类型转换就足够啦):
try: num = int(input("Enter a number:")) doub = num * 2 print("Double of {0}, is {1}".format(num, doub)) except ValueError: print("请输入有效的数字哦!")
(附上你提供的运行结果截图:程序运行异常截图)
内容的提问来源于stack exchange,提问作者Lili
相关产品推荐
相关产品推荐

