You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python中按输入变量次数重复字符串报错问题求助

解决Python字符串重复时的TypeError问题

嘿,这个问题我之前也碰到过!咱们来一步步拆解解决它~

为啥会报错?

你看到的TypeError: can't multiply sequence by non-int of type 'str',本质原因是从输入里拆分出来的number是字符串类型。Python里只有整数才能和字符串相乘实现重复效果,字符串和字符串之间可没法这么玩哦。

看你的代码:

s = raw_input()
p = s.split(" ")
mystr = p[0]
number = p[1]
print mystr * number

这里p[1]取到的是输入里的"5"(带引号的字符串),不是整数5,所以执行乘法时直接触发错误了。

修复后的代码

只需要给number做个类型转换,用int()把字符串转成整数就行:

s = raw_input()
p = s.split(" ")
mystr = p[0]
number = int(p[1])  # 关键:把字符串转成整数
print mystr * number

现在输入abcdefg 5,就能得到你想要的重复结果啦。

更简洁的写法(可选)

可以用解包的方式简化代码,看起来更清爽:

mystr, num_str = raw_input().split()
number = int(num_str)
print mystr * number

甚至可以把转换和输出合并成更短的写法:

mystr, number = raw_input().split()
print mystr * int(number)

额外小提示(处理异常)

如果担心用户输入格式不对(比如输了多于两个内容、第二个不是数字),可以加个异常处理,让程序更健壮:

try:
    mystr, num_str = raw_input().split()
    number = int(num_str)
    print mystr * number
except (ValueError, IndexError):
    print("请输入正确格式:<目标字符串> <重复次数(整数)>")

内容的提问来源于stack exchange,提问作者Chica_Programmador

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.22 09:00:05