在此代码中,您有一个门代码和一个键盘

问题描述

我有一扇门,它有一个键盘密码。如果你的代码正确,你会说正确,如果你弄错了,它只会打印错误代码(仅用于调试)。但是,我不明白为什么我编码时什么也没有发生。这是python顺便说一句:

realnumber = [12345]
inputnumber = []

def main():
  integer = input("Input a list of numbers to open the door:")

  if integer == realnumber:
    print(realnumber)
    print("Correct")
  else:
    inputnumber.append(integer)
main()

解决方法

这主要是猜测,但这里有两个问题对我来说很突出:

integer = input("Input a list of numbers to open the door:")

您可能不知道这里名为 integer 的变量将转换为字符串,而不管您的输入如何。我可以建议你试试:

integer = int(input("Input a list of numbers to open the door:"))

或者甚至更好,像这样捕捉无意义的输入:

try:
    integer = int(input("Input a list of numbers to open the door:"))
except ValueError:
    print("Invalid Input")

其次,

  if integer == realnumber:

在这里,您尝试将变量“integer”(当前是一个字符串,但我建议更改为“int”变量)与 realnumber 进行比较,但 realnumber 是一个只有一个输入的变量列表。

我建议您选择以下更改之一:

  if integer == realnumber[0]:

realnumber = 12345

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...