用户输入特定值的Python问题

时间:2017-09-29 02:45:09

标签: python

我遇到有关python的问题。我的问题是,即使用户输入了有效的整数,我的代码也会始终打印出第一个if语句。我真的不知道这个问题。我必须允许用户输入一个限制为1-10的值,我必须能够输出“请输入1-10之间的整数”或“这甚至不是一个数字傻!”。有人可以帮助我做更多的事情而不仅仅是编写代码,但也要解释一下吗?

value = input("Please input an integer: ")

def numValue(value):
    for value in range(-1000, 1000):
        if (value < 1, value > 10):
            return "Please input a number between 1-10."
        elif (value >= 1, value <= 10):
            return "Great choice!"

print (numValue(value))

1 个答案:

答案 0 :(得分:0)

  • 首先,您需要告诉python您期望一个整数。这是通过将int(..)包裹在input
  • 附近来完成的
  • 您有一个不必要的for循环range。不需要
  • 如果您希望范围包含在内,则检查数字是否在start < num < end或(<=)之间的语法
  • 您不要在elif中添加反向检查,如果原始条件失败,使用else会自动回退
value = int(input("Please input an integer: "))

def numValue(value):
    if 1 <= value <= 10: 
        return "Great choice!"
    else:
        return "Please input a number between 1-10."

print (numValue(value))