或python中的语法

Unabashedley

我试图了解这两个选项的结果之间的差异,并且可能会得到更好的选择。我是一个新手,但是我的指导不是很详细,并且我很难获取有关Python语法的信息-如果有人拥有丰富的资源,我很乐意欢迎您。:)

def numberchoice():
    print "How much do you take?"
    choice = raw_input("> ")
    if "0" in choice or "1" in choice or "2" in choice: #OPTION ONE
    #if "0" or "1" or "2" in choice: #OPTION TWO
        how_much = int(choice)
    else:
        print "please type a number."
        numberchoice()
    if how_much < 50:
        exit("Nice, you're not greedy, you win!")
    if how_much > 50:
        exit("You greedy bastard!")
numberchoice()

我不明白的是为什么选项一和选项二不能互换。如果我使用选项一,并且用户输入了错误的响应-即 字母而不是数字-选项一运行“ else”响应,但是选项二给出一个错误。提前致谢!

致癌物质
if "0" or "1" or "2" in choice

对于新程序员来说,这是一个极为常见的错误。

这可以理解为

if '0' == true or '1' == true or '2' in choice

您知道现在出了什么问题吗?"0"作为非空字符串,它将为true,并且将始终为true,因此其余检查甚至都不会执行。

请记住,or只需检查其操作数之一为真(或真)。它没有某种智能行为,因此无法像英语一样阅读并按预期运行。

第1版是正确的,尽管以后您会学到更好的编写方法。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Python中的%语法

来自分类Dev

语法:python中的比较

来自分类Dev

了解Python中的语法

来自分类Dev

namedtuple中的namedtuple的Python语法

来自分类Dev

Elif中的Python无效语法

来自分类Dev

Python中的语法列表联接

来自分类Dev

排序代码Python中的语法

来自分类Dev

vim中的多彩Python语法?

来自分类Dev

Python语法:函数参数中的“ for”

来自分类Dev

python中循环的正确语法

来自分类Dev

较低的长度语法在python中?

来自分类Dev

Python中的指数语法

来自分类Dev

Python中xpath的Selenium语法

来自分类Dev

python中的奇怪语法错误:无效语法

来自分类Dev

IndentationError是Python中的语法错误吗?

来自分类Dev

python和matplotlib中的多点语法

来自分类Dev

eval SyntaxError:python中的语法无效

来自分类Dev

paraview python shell中的输入语法

来自分类Dev

Python urllib2中的语法问题?

来自分类Dev

python中的数据库查询语法

来自分类Dev

终端中的Python打印返回“无效语法”

来自分类Dev

Python中数学公式的语法

来自分类Dev

2.6版中的Python语法错误

来自分类Dev

列表中的差异-Python-语法说明

来自分类Dev

避免python中'as'语句的语法错误

来自分类Dev

PyCharm中的Python3语法

来自分类Dev

python在模块检查中的语法错误

来自分类Dev

模块来解析python中的简单语法

来自分类Dev

NLTK,Python中的FCFG错误。语法问题