Python中基本运算符&复合运算符&运算符优先级

基本运算符

Python中基本运算符&复合运算符&运算符优先级

>>> a=4

>>> 3<a<10

True

>>> a = 0b11001

>>> b = 0b01000

>>> a

25

>>> b

8

>>> c = a|b

>>> c

25

>>> bin(c)

'0b11001'

>>> bin(a&b)

'0b1000'

>>> bin(a^b)

'0b10001'

>>> a=3

>>> a<<2

12

>>> a<<3

24

>>> a = 8

>>> a<<1 #左移一位相当于乘以2

16

>>> a<<2

32

>>> a>>1  #右移一位相当于除以2

4

>>> a>>2

2

>>> 3+2

5

>>> "3" + "2"

'32'

>>> [10,20,30] + [5,10,100]

[10, 20, 30, 5, 10, 100]

>>> 3*2

6

>>> "sxt" * 3

'sxtsxtsxt'

>>> [10,20,30] * 3

[10, 20, 30, 10, 20, 30, 10, 20, 30]

>>>

 

复合赋值运算符

Python中基本运算符&复合运算符&运算符优先级

注意:与C和JAVA不一样,Python不支持自增(++)和自减(--),a+=1

运算符的优先级

运算符优先级问题

Python中基本运算符&复合运算符&运算符优先级

>>> (5+10*x)/5-13*(y-1)*(a+b)/x+9*(5/x+(12+x)/y)

Traceback (most recent call last):

  File "<pyshell#34>", line 1, in <module>

    (5+10*x)/5-13*(y-1)*(a+b)/x+9*(5/x+(12+x)/y)

NameError: name 'x' is not defined

>>>