python中的运算符包括多种多样的,可以分为以下几个大类

第一种:算数运算

第二种:比较运算

第三种:赋值运算

第四种:逻辑运算

1,优先级

在没有()的情况下not 优先级高于 and,and优先级高于or,即优先级关系为( )>not>and>or,同一优先级从左往右计算。
例题:
判断下列逻辑语句的True,False。
or中有一个为真,则为True 
and中有一个为假,则为false
3>4 or 4<3 and 1==1        True
1 < 2 and 3 < 4 or 1>2        True
2 > 1 and 3 < 4 or 4 > 5 and 2 < 1        True
1 > 2 and 3 < 4 or 4 > 5 and 2 > 1 or 9 < 8        False
1 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6        False
not 2 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 <6    False
print(1>2 and 3 or 4 and 3 < 2) == 0

2 ,or 和and

or中有一个为真,则为True ,显示True的值,全为真,则显示第一位的True值。全部为False,显示后一位的False值
and中有一个为假,则为false,显示False的值,全为真,则显示第二位的 True值。全部为False,显示第一位的False值
print(int(True))  == 1
print(int(False))    ==0
8 or 4 8
0 and 3 3
0 or 4 and 3 or 7 or 9 and 6 3
print(2 or 1 < 3) == 2
print(2 or 1 < 3 and 2) == 2
 

练习题

##判断下列逻辑语句的True和False
# print(1 > 1 or 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6)       ==True
# print(not 2 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6)   ==False
# print(1 > 2 and 3 < 4 or 4 > 5 and 2 > 1 or 9 < 8 and 4 > 6 or 3 < 2 )  ==False
#
# #求出下列逻辑语句的值
# print(8 or 3 and 4 or 2 and 0 or 9 and 7)  == 8
# print(0 or 2 and 3 and 4 or 6 and 0 or 3)  == 4
# print(5 and 9 or 10 and 2 or 3 and 5 or 5) == 9

#下列结果是什么?
print(6 or 2 > 1)     == 6
print(3 or 2 > 1)     ==3
print(0 or 5 < 4)    ==False
print(5 < 4 or 3)    ==3
print(2 > 1 or 6)    ==True
print(3 and 2 > 1)    ==True
print(0 and 3 > 1)    ==0
print(2 > 1 and 3)    ==3
print(3 > 1 and 0)    ==0
print(3 > 1 and 2 or 2 < 3 and 4 or 3 > 2)    ==2

 

第五种:成员运算

 

in,not in :
判断子元素是否在原字符串(字典,列表,集合)中:
例如:

#print('喜欢' in 'dkfljadklf喜欢hfjdkas')
#print('a' in 'bcvd')
#print('y' not in 'ofkjdslaf')

第六种:身份运算

第七种:位运算

 

a = 60            # 60 = 0011 1100
b = 13            # 13 = 0000 1101
c = 0
  
c = a & b;        # 12 = 0000 1100
print "Line 1 - Value of c is ", c
  
c = a | b;        # 61 = 0011 1101
print "Line 2 - Value of c is ", c
  
c = a ^ b;        # 49 = 0011 0001 #相同为0,不同为1
print "Line 3 - Value of c is ", c
  
c = ~a;           # -61 = 1100 0011
print "Line 4 - Value of c is ", c
  
c = a << 2;       # 240 = 1111 0000
print "Line 5 - Value of c is ", c
  
c = a >> 2;       # 15 = 0000 1111
print "Line 6 - Value of c is ", c

总结运算符的优先级

 

 posted on 2018-07-13 14:11  Arthur7  阅读(175)  评论(0)    收藏  举报