首页 > 解决方案 > 如何将我的字符串转换为整数以将其乘以字符串?

问题描述

import turtle

var=1
t=turtle
print('Command here:')
while True:
    cmd=input()
        var=input()
        if cmd=='f':
                t.fd(1)
        elif cmd=='b':
                t.bk(1)
        elif cmd=='u':
                t.pu()
        elif cmd=='d':
                t.pd()
        elif cmd=='r':
                t.rt(1)
        elif cmd=='l':
                t.lt(1)
    elif cmd=='':
                t.fd(0)
        elif cmd.isnumeric():
                if var==0:
                        var+cmd
                else:
                        var*cmd
        elif cmd=='x':
                break
        else:
                print('Unknown command, try a different command')

那是我的代码,我试图将它乘以一个字符串。每当我运行代码时,我都会收到此错误:

我试过做 int(cmd)*var 和 var=int(input()) 但似乎没有任何效果。我无法理解这个问题。我只需要被引导到正确的方向,因为我多年来一直被困在这部分。

  File "as2.py", line 27, in <module>
    var*cmd
TypeError: can't multiply sequence by non-int of type 'str'```

标签: python-3.x

解决方案


这对我有用:

cmd=input()
var=input()
if cmd.isnumeric():
    print(int(var)*int(cmd))

5
5
25

尝试int()在这两个参数上使用。

input()返回一个字符串表示,因此两个变量必须首先将其值转换为int


推荐阅读