当前位置: 首页 > 知识库问答 >
问题:

限制输入为整数(文本崩溃PYTHON程序)[重复]

邬英武
2023-03-14

Python新手,尝试将测验输入限制为数字1、2或3。
如果输入文本,程序将崩溃(因为无法识别文本输入)
这里是我的一个改编:欢迎任何帮助。

choice = input("Enter Choice 1,2 or 3:")
if choice == 1:
    print "Your Choice is 1"
elif choice == 2:
    print "Your Choice is 2"  
elif choice == 3:
    print "Your Choice is 3"
elif choice > 3 or choice < 1:
    print "Invalid Option, you needed to type a 1, 2 or 3...."

共有2个答案

牟飞沉
2023-03-14

尝试此操作,假设choice是一个字符串,就像问题中描述的问题一样:

if int(choice) in (1, 2, 3):
    print "Your Choice is " + choice
else:
    print "Invalid Option, you needed to type a 1, 2 or 3...."
龚博涛
2023-03-14

使用raw\u input(),然后转换为int(如果转换失败,则捕获ValueError)。您甚至可以包括一个范围测试,如果给定的选择超出允许值的范围,则显式地提出ValueError()

try:
    choice = int(raw_input("Enter choice 1, 2 or 3:"))
    if not (1 <= choice <= 3):
        raise ValueError()
except ValueError:
    print "Invalid Option, you needed to type a 1, 2 or 3...."
else:
    print "Your choice is", choice
 类似资料:
  • 问题内容: 我知道这个问题一定已经被提出并回答了一百万遍了,但是我找不到一个简单的解决方案。我有一个JTextField,它只接受正整数作为输入。我需要一种方法来确保此处没有其他输入。 我已经有一个附加到此控件。删除此侦听器在那里要处理的其他代码,我得到了: 如你所见,我正在尝试使用来检查刚刚按下的键是否在整数范围内。这似乎有效。但是我想做的就是,如果该条目不在此范围内,则只需忽略该条目。该代码本

  • 我正在使用内置于Web View的Android开发浏览器。其中我面临的一个问题是,当我访问http://crashmybrowser.com测试浏览器上的选项卡崩溃时,我的整个浏览器应用程序都会崩溃。但是,当在chrome或Opera上进行相同的测试时,这些浏览器会在崩溃中幸存下来,并且只有特定的选项卡崩溃是由于访问上述网站而预期的结果。有人能帮助理解我如何在使用Webview的浏览器上处理此崩

  • 问题内容: 我正在尝试进行多项选择调查,以允许用户从选项1-x中进行选择。如何做到这一点,以便用户输入除数字以外的任何字符,返回“那是无效答案”之类的内容 问题答案: 您的代码将变为: 它的工作方式是使循环无限循环,直到仅放入数字为止。因此,如果我输入“ 1”,它将破坏循环。但是如果我放“ Fooey!” 该语句将捕获“将引发的错误” ,并且该循环将循环,因为它没有被破坏。

  • 我开始学习android,我的第一个练习是计算器。在做适当的计算器之前,我计划创建一个非常基本的应用程序,用户只需通过EditText输入2个数字,用按钮选择算术运算,并在按下“igual”按钮时在TextView中获得结果。 我的想法是声明2个字符串(sinput1 在我开始编写操作的工作方式之前,所有布局看起来都运行良好,但是每次我运行应用程序(使用手机或模拟器)时,当我按EditText输入

  • 在这里,我做了一个文本输入,它显示1000按文本范围的vlaue划分: 数字结果出现在小数点以外。如何限制文本输入中出现的字符数(例如4位数:12.34)?在这里似乎不起作用。

  • 我尝试从firebase获取字符串到ListView,但当我添加行时 应用程序崩溃了,然后就停止了。我确信ListView是正确的。xml(activity\u periferies\u list.xml)。我在另一个活动中使用了相同的代码,并且可以正常工作,但现在我创建的任何新活动中都没有使用相同的代码。 。