用户输入有问题

2024-04-27 05:34:07 发布

您现在位置:Python中文网/ 问答频道 /正文

在我的代码中,我试图制作一个蚀刻草图。我在高中上编码课,我们的项目是使用列表和用户输入来做我们想做的事情。我选择了蚀刻素描,因为我们班也在用海龟画画。目前我有一个海龟(trtl)和一个用户输入。下面是我如何设置它的

user_inp = [] 
x = input(" ")
user_inp.append(x)

我试图让它像读一本书一样通读代码,而不是一次只搜索一个变量。目前我有一个def函数设置为

def move():
  trtl.forward(20)

for w in user_inp():
   if w in user_inp:
       move()

问题是我输入了“w”作为输入。它不起作用,相反,它显示为一无所有。我非常需要帮助,当我试图向老师解释我需要什么帮助时,他不明白。如果你们中有人这样做并且能帮助我,请这样做


Tags: 项目代码用户in编码列表movedef
2条回答

我假设user_inp.ammend(x)是一个打字错误。显然user_inp.append(x)是你想要的

您的逻辑将导致海龟总是为每个输入字符移动20步。以下代码将新变量w分配给用户输入中的每个连续字符。它无法从输入中获取所有'w'字符:

for w in user_inp():

类似地,现在w包含输入中的一些字符,此代码将始终返回true:

if w in user_inp:

这是因为我们已经从输入中获取了字符,所以它保证在输入中

相反,你只需要做如下事情:

for letter in user_inp():
   if letter == 'w':
       move()

您需要将user_inp.ammend(x)更改为user_inp.append(x),当您在user_inp列表中循环时,您不需要括号,因为它不是一个函数,而是一个列表,因此也会发送错误

相关问题 更多 >