注意:表达式和语句的区别
表达式不会对程序或者变量造成影响,只有在赋值的情况下才会产生影响。程序是由语句一条一条组成的,语句会对程序造成直接的影响。A+b为表达式,x=a+b为语句。
一、算数表达式:
二、赋值表达式:
三、关系表达式(比较表达式)
返回一个bool值,True或者False
注意: 字符串也能比较大小,只不过比较的是UNICODE编码的大小,比较大小按照每一位进行比较,第一位一样情况下才会往下面继续比较。如:‘b’ > ’a’ return True ‘b’>’ab’ return True ‘2’>‘12‘ return True。
四、逻辑表达式:
1、 非 not
Return一个bool值,格式:not 值/表达式,先把值/表达式转换成True or False,然后取反。比如:not True->return False;not 1->return False。
2、 与 and
Return一个真实的值,格式:值1 and 值2。and为串联逻辑表达式,可理解为电路的串联情况,当第一个为True(导通)时,返回第二个值;第一个为False(断开)时直接返回第一个值,不再去理会第二个值。demo: [] and 1 -> return [];1 and [] -> return [];True and 3 -> return 3.
3、 或 or
Return 一个真实的值,,格式:值1 or 值2。or为并联逻辑表达式,可理解为电路的并联情况,当第一个为True(导通)时,直接返回第一个值,不会理会第二个值,当第一个为False(断开)时,直接返回第二个值。demo: 1 or [] -> return 1;[] or 1 -> return 1。
五、身份表达式:
身份表达式 VS 等等于:==比较的是value,is 比较的是id。
原文:https://www.cnblogs.com/henji1266/p/11994690.html