Demo There is no trace of wings in the sky, but I have flown by.

python之if测试

(一)python的条件判断语句一般格式如下:

if (条件1):

       (执行结果)

elif(条件2):

  (执行结果)

.....

else:

  (执行结果)

执行顺序为从上到下判断,若条件1不符合则进入条件2判断,条件2不符合进入下一个条件判断,若都不符合进入else执行else下的结果。若条件1不符合则进入条件2判断,若条件2判断符合,则执行条件2下的结果输出,后面不再执行。

 

(二)语句中,若想要语句输出时跨数行,可以有几种方法:

1、在前一行的末尾加上反斜线(\)

2、使用三重引号’‘’内容‘’‘,输出的内容格式与引号中的一致

一般三重引号的方式较常用

 

(三)布尔值(true/false)

X and Y

  如果X和Y都为真,则为真

X or Y

  如果X或Y中有一个为真,则为真

not X

  若X为假,就是真

 

or测试情况下,python会从左至右判断操作对象,返回第一个为真的对象(也称为短路计算),若均为假,则返回最后一个对象

eg:

2 or 3,[] or 2 

判断方式:首先判断2 or 3公式,开始读2,为真,则返回2;接下来判断3 or 2,开始读[],为假,接着读2,为真,返回2。因此结果为(2,2)

and 测试情况下,python会从左至右判断操作对象,返回第一个为假的对象,若均为真,则返回最后一个对象

eg:

3 and 0 and 5 and []

判断方式:从左至右判断,读到0时判断为假,则返回0

注:{}、[]、0均为假

 

思考题:

if/else三元表达式

if x:

  a = y

else:

  a = z

 

等于:a = y if x else z

等于:a = ((x and y) or z)

是怎样的相等逻辑?

 

posted @ 2018-08-13 00:57  花花大王  阅读(678)  评论(0编辑  收藏  举报