我的代码没有在 Python 中给我预期的结果
My Code isn't Giving Me the Expected Outcome in Python
(Codehs 内置了 Turtle)
我在学校使用 codehs.com 作为 class,我们目前正在研究海龟图形。这些简单的 if/elif/else 语句无法正确响应输入的数字。如果用户号码高于密码 (4),他们应该画一个向下的箭头,如果低于密码,则应该画一个向上的箭头。当用户输入一个不是密码的数字时,它会显示任一箭头并为用户重新打开输入。如果猜对了数字,它会显示一个复选标记。
我尝试研究我的问题,但找不到与我的具体问题相关的任何内容。
user_number = int(input("Choose a number between 1 and 10: "))
secret_number = 4
def checkmark():
color("green")
pensize(8)
penup()
left(45)
forward(50)
pendown()
backward(50)
left(90)
forward(25)
def down_arrow():
penup()
setposition(0,-25)
pendown()
left(90)
forward(50)
right(45)
backward(25)
forward(25)
left(90)
backward(25)
def up_arrow():
penup()
setposition(0,25)
pendown()
right(90)
forward(50)
right(45)
backward(25)
forward(25)
left(90)
backward(25)
while user_number != secret_number:
user_number = int(input("Choose a number between 1 and 10: "))
if user_number ==secret_number:
checkmark()
elif user_number < secret_number:
up_arrow()
user_number = int(input("Choose a number between 1 and 10: "))
else:
down_arrow()
user_number = int(input("Choose a number between 1 and 10: "))
它应该显示向上箭头或向下箭头,具体取决于输入的数字是大于还是小于密码,但它会跳过箭头,直接返回到输入框。
while 循环后的 If 子句缩进不正确,您的 while 循环只是
while user_number != secret_number:
user_number = int(input("Choose a number between 1 and 10: "))
并且跳出循环的唯一方法是获得正确的秘密数字——此时 if 语句为真,checkmark() 为 运行 并且程序结束
要修复错误,只需缩进 if 和 else 子句即可。
(Codehs 内置了 Turtle) 我在学校使用 codehs.com 作为 class,我们目前正在研究海龟图形。这些简单的 if/elif/else 语句无法正确响应输入的数字。如果用户号码高于密码 (4),他们应该画一个向下的箭头,如果低于密码,则应该画一个向上的箭头。当用户输入一个不是密码的数字时,它会显示任一箭头并为用户重新打开输入。如果猜对了数字,它会显示一个复选标记。
我尝试研究我的问题,但找不到与我的具体问题相关的任何内容。
user_number = int(input("Choose a number between 1 and 10: "))
secret_number = 4
def checkmark():
color("green")
pensize(8)
penup()
left(45)
forward(50)
pendown()
backward(50)
left(90)
forward(25)
def down_arrow():
penup()
setposition(0,-25)
pendown()
left(90)
forward(50)
right(45)
backward(25)
forward(25)
left(90)
backward(25)
def up_arrow():
penup()
setposition(0,25)
pendown()
right(90)
forward(50)
right(45)
backward(25)
forward(25)
left(90)
backward(25)
while user_number != secret_number:
user_number = int(input("Choose a number between 1 and 10: "))
if user_number ==secret_number:
checkmark()
elif user_number < secret_number:
up_arrow()
user_number = int(input("Choose a number between 1 and 10: "))
else:
down_arrow()
user_number = int(input("Choose a number between 1 and 10: "))
它应该显示向上箭头或向下箭头,具体取决于输入的数字是大于还是小于密码,但它会跳过箭头,直接返回到输入框。
while 循环后的 If 子句缩进不正确,您的 while 循环只是
while user_number != secret_number:
user_number = int(input("Choose a number between 1 and 10: "))
并且跳出循环的唯一方法是获得正确的秘密数字——此时 if 语句为真,checkmark() 为 运行 并且程序结束
要修复错误,只需缩进 if 和 else 子句即可。