第二篇 Python运算符

1.算术运算符

运算符 描述
 +  两个值相加
 -  两个值相减
 *  两个值相乘
 /  两个值相除
 %  得到两个数相除的余数
 **  x**y得到x的y次幂
 //  返回两个数相除商的整数部分
扫描二维码关注公众号,回复: 4857546 查看本文章
 1 a=32
 2 b=19
 3 
 4 
 5 print("+)返回两个值的和:",a+b)
 6 
 7 print("-)返回两个值的差:",a-b)
 8 
 9 print("*)返回两个值的积:",a*b)
10 
11 print("/)返回两个值的商:",a/b)
12 
13 print("%)返回两个值相除的余数:",a%b)
14 
15 print("**)返回2的3次幂:",2**3)
16 
17 print("//)返回两个值相除的整数部分:",a//b)
18 
19 -------输出结果-----
20 +)返回两个值的和: 51
21 -)返回两个值的差: 13
22 *)返回两个值的积: 608
23 /)返回两个值的商: 1.6842105263157894
24 %)返回两个值相除的余数: 13
25 **)返回2的3次幂: 8
26 //)返回两个值相除的整数部分: 1

 2.比较运算符

运算符 描述
== 比较两个对象是否相等,相等返回true,不相等,返回false
!= 比较两个对象是否不相等,不相等返回true,相等返回false
>  比较第一个对象是否大于第二个对象,大于,返回true,否则返回false
<  比较第一个对象是否小于第二个对象,小于,返回true,否则返回false
>=  比较第一个对象是否大于等于第二个对象,大于等于,返回true,否则返回false
<=  比较第一个对象是否小于等于第二个对象,小于等于,返回true,否则返回false
 1 a=32
 2 b=32
 3 
 4 
 5 print("==)比较两个值是否相等:",a==b)
 6 
 7 print("!=)比较两个值是否不相等:",a!=b)
 8 a=40
 9 b=32
10 print(">)比较第一个值是否大于第二个值:",a>b)
11 
12 print("<)比较第一个值是否小于第二个值:",a<b)
13 b=40
14 print(">=)比较第一个值是否大于等于第二个值:",a>=b)
15 
16 print("<=)比较第一个值是否小于等于第二个值:",a<=b)
17 
18 ------输出结果------
19 ==)比较两个值是否相等: True
20 !=)比较两个值是否不相等: False
21 >)比较第一个值是否大于第二个值: True
22 <)比较第一个值是否小于第二个值: False
23 >=)比较第一个值是否大于等于第二个值: True
24 <=)比较第一个值是否小于等于第二个值: True

 3.赋值运算符

运算符 描述
= 把右边的值赋给左边的
+= 左边的值等于左边的值加上右边的值
-= 左边的值等于左边的值减去右边的值
*= 左边的值等于左边的值乘上右边的值
/= 左边的值等于左边的值除以右边的值
%= 左边的值等于左边的值属于右边的值的余数
//= 左边的值等于左边的值除以右边的值的整数部分
**= 左边的值等于左边的值的右边值的次幂
 1 a=13
 2 b=6
 3 a+=b
 4 print("+=):",a)
 5 a=13
 6 b=6
 7 a-=b
 8 print("-=):",a)
 9 a=13
10 b=6
11 a*=b
12 print("*=):",a)
13 a=13
14 b=6
15 a/=b
16 print("/=):",a)
17 a=13
18 b=6
19 a%=b
20 print("%=):",a)
21 a=13
22 b=6
23 a//=b
24 print("//=):",a)
25 a=13
26 b=6
27 a**=b
28 print("**=):",a)
29 
30 
31 -------输出结果------
32 +=): 19
33 -=): 7
34 *=): 78
35 /=): 2.1666666666666665
36 %=): 1
37 //=): 2
38 **=): 4826809

 4.位运算符

运算符 描述
& 按位与运算符,两个值的相应位都为1,该位结果为1,否则为0
| 按位或运算符,两个值的相应位其中一个为1,则该位结果为1,否则为0
^ 按位亦或运算符,两个值的相应位不相同时,则该结果为1,否则为0
~ 按位取反运算符,对数据的每个二进制位取反,即把1变成0,把0变成1
<< 按位左移运算符,把二进制位全部左移若干位
>> 按位右移运算符,把二进制位全部右移若干位
 1 a=5 #00000101
 2 b=6 #00000110
 3 c=a|b
 4 print("a|b):",c) #00000111
 5 print("a&b):",a&b) #00000100
 6 print("~a):",~a)   # ~a=-(a+1)
 7 print("a^b):",a^b) #00000011
 8 print("<<):",a<<2) # 00010100
 9 print(">>):",a>>2) # 00000001
10 
11 ------输出结果-----
12 a|b): 7
13 a&b): 4
14 ~a): -6
15 a^b): 3
16 <<): 20
17 >>): 1

注:按位取反的计算公式:~a=-(a+1),a+1然后加上负号,~12的二进制位00001100,加1之后为00001101,十进制为13,加上负号为-13。

5.逻辑运算符

运算符 描述
and  布尔与,左边和右边均为True,则返回右边的计算值,否则左边为True,则返回右边的值,右边为True,则返回左边的值
or 布尔或,如果左边值为True,则返回左边的值,否则返回右边的值
not 布尔非,如果值为True,则结果为False,如果值为False,则结果为True
 1 a=12
 2 b=13
 3 print("and):",a and b) #13
 4 a=1
 5 b=0
 6 print("and):",a and b) #0
 7 a=0
 8 b=1
 9 print("and):",a and b) #0
10 a=1
11 b=0
12 print("or):",a or b)
13 a=0
14 b=1
15 print("or):",a or b)
16 print("not):",not a)
17 print("not):",not b)
18 
19 --------输出结果-------
20 and): 13
21 and): 0
22 and): 0
23 or): 1
24 or): 1
25 not): True
26 not): False

6.成员运算符

运算符 描述
in 如果在指定的列表中找到值则返回True,否则返回False
not in 如果在指定的列表中没有找到值则返回True,否则返回False
1 lists=[1,2,3,4,5,6,7]
2 print("in):",(1 in lists))
3 print("in):",(12 in lists))
4 print("not in):",(12  not in lists))
5 
6 -----输出结果--------
7 in): True
8 in): False
9 not in): True

7.身份运算符

身份运算符是判断两个对象的内存地址是否一样,即是否是同一个对象的引用。

运算符 描述
is  判断两个对象的内存地址是否一样
is not 判断两个对象的内存地址是否不一样
 1 lists=[1,2,3,4,5,6,7]
 2 lists_copy=[1,2,3,4,5,6,7]
 3 
 4 print("is):",lists is lists_copy)
 5 
 6 print("not is):",lists is not  lists_copy)
 7 
 8 print("==):",lists_copy==lists)
 9 
10 ------输出结果-----
11 is): False
12 not is): True
13 ==): True

注:is和==的区别为is判断内存地址是否一样,而==判断的是值是否一样。

8.运算符的优先级

对于运算符的优先级了解即可吧,可以通过括号控制运算符的优先级。

猜你喜欢

转载自www.cnblogs.com/zhuzhaoli/p/10247045.html