python表达式

算术表达式:

 

 

地板除:

>>> 10 // 3
3
>>> 5 // 2
2
>>> 5 // 3
1

 

取余:

>>> 10 % 3
1
>>> 10 % 4
2

 

幂运算:

>>> 4 ** 2
16

 

逻辑表达式:

>>> x = 1
>>> y = 0
>>> not x
False
>>> not y
True
>>> x and y      # 一假即假
0
>>> x or y        # 一真即真
1
>>> x is 1        #根据内存地址判断
True
>>> x is not 1
False

 

空列表是假:

>>> list1 = []          
>>> not list1
True

 

关系表达式:

==    等于   #只判断数据元素

!=   不等于

>

<

>=

<=

 

字符串比较:

从左到有比较ASCII码,一旦得出结果就不在向右继续比较

ASCII码:  

>>> ord('B')
66

a=97 ,b=98

A=65,

>>> 'baa' < 'abb'
False

 

位运算:

a = 1  ,  b = -1
a源码:0000 0001 反码:0000 0001 补码:0000 0001
b源码:1000 0001 反码:1111 1110 补码:1111 1111

源码的最高位是0则表示正数,1则表示负数。

反码=源码的符号位不变,其他取反

补码=反码+1

计算机中实际存在的是补码。

 

~a    按位取反

~a  =  - (a + 1)

 

a & b  按位与       (一假即假)

a | b   按位或       (一真即真)

a ^ b  按位异或   (相同为0,不同为1)

a  << n   二进制数想左移n位

a  >> n  二进制数想右移n位

 

posted @ 2016-09-03 11:04  xuanhui  阅读(288)  评论(0编辑  收藏  举报