Python中怎样简单地用一行写if-then语句?

Python023

Python中怎样简单地用一行写if-then语句?,第1张

我只是进入Python,我真的很喜欢语法的简洁。但是,是否有更简单的方法来编写if-then语句,以便它适合一行?

例如:

有没有更简单的写这个方法?我的意思是,在Objective-C中,我会把它写成:

Python有什么类似的东西吗?

更新

我知道在这种情况下,我可以使用 count == (count + 1) % N 。

我在问一般的语法。

这更像是一个 ternary operator 表达式,而不是if-then,这是python语法

更好的例子: (感谢 Mr. Burns

和赋值语句一起使用:

对比:

翻译整理: codewenda.com

英文原文: stackoverflow

Python中的if elif else结构通常如下:

在特殊情况下,我们可能希望把这个条件语句写成一行,如(列表推导式中)。

结论就是,将上述结构改为:

如下例:

希望对一个字符串数据进行判断,获取一个该二手房信息属于哪种类型的房产 :判断依据就是,如果字符串中含有别墅则是别墅,如果含有车位即为车位,其他为高层。

Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。

Python程序语言指定任何非0和非空(null)值为true,0 或者 null为false。

Python 编程中 if 语句用于控制程序的执行。其中"判断条件"成立时(非零),则执行后面的语句,而执行内容可以多行,以缩进来区分表示同一范围。

else 为可选语句,当需要在条件不成立时执行内容则可以执行相关语句。

(1)简单的if语句:

在第1行中,可包含任何条件测试,而在紧跟在测试后面的缩进代码块中,可执行任何操作。如果条件测试的结果为True,Python就会执行紧跟在if语句后面的代码;否则Python将忽略这些代码。

(2)if-else语句

经常需要在条件测试通过了时执行一个操作,并在没有通过时执行另一个操作;在这种情况下,可使用Python提供的if-else语句。if-else语句块类似于简单的if语句,但其中的else语句,让你能够指定条件测试未通过时要执行的操作。

(3)if-elif-else语句

经常需要检查超过两个的情形,为此可使用Python提供的if-elif-else结构。Python只执行if-elif-else结构中的一个代码块,它依次检查每个条件测试,直到遇到通过了的条件测试。测试通过后,Python将执行紧跟在它后面的代码,并跳过余下的测试。

条件测试:

(1)概念:

每条if语句的核心都是一个值为True或False的表达式,这种表达式被称为条件测试。Python根据条件测试的值为True还是False来决定是否执行if语句中的代码。如果条件测试的值为True,Python就执行紧跟在if语句后面的代码;如果为False,Python就忽略这些代码。

(2)检查是否相等:

通常情况下会用 “==”的左值和右值是否相等来判断程序是否继续进行,会区分大小写也会用“!=” 来表示不相等继续进行,相等则忽略。

(3)检查多个条件:

and:    要检查是否两个条件都为True,可使用关键字and将两个条件测试合而为一;如果每个测试都通过了,整个表达式就为True;如果至少有一个测试没有通过,整个表达式就为False。

or:   关键字or也能够让你检查多个条件,但只要至少有一个条件满足,就能通过整个测试。仅当两个测试都没有通过时,使用or的表达式才为False。

(4)检查特定值是否包含在列表内:

要判断特定的值是否已包含在列表中,可使用关键字in。

(5)检查特定值是否不包含在列表内:

确定特定的值未包含在列表中很重要,可使用关键字not in。

(6)布尔表达式:

布尔表达式的结果要么为True,要么为False。