Python中的表达式和运算符

一、表达式 expression

定义:由一个数字或者数字和运算符组成,通常让计算机做一些事情并且返回结果

例如:
1+2*6/4-5         # -1

二、运算符

1、算数运算符:

+:加法运算
例如:
print(3+4)          # 7
print(3.4+5.25)     # 8.65

-:减法运算
例如:
print(7-9)        # -2
print(8.4-2.5)    #5.9

*:乘法运算
例如:
print(5*5)        # 25
print(2.5*2.5)    # 6.25


/:乘法运算
例如:
print(8/4)        # 2.0
print(10/2.5)     # 4.0


//:地板除、取整运算
例如:
print(10//2)      # 4
print(92//3)      # 2


%:取余运算
例如:
print(25%5)        # 0
print(100%3)       # 1


**:幂运算
例如:
print(7**2)       # 49
print(10**3)      # 1000

2、复合赋值算术运算符:

+=:加法赋值    a+=1  相当于:a=a+1
-=:减法赋值    a-=1  相当于:a=a-1
*=:乘法赋值    a*=2  相当于:a=a*2
/=:除法赋值    a/=2  相当于:a=a/2
//=:取整赋值   a//=2 相当于:a=a//2
%=:取余赋值    a%=2  相当于:a=a%2
**=:幂赋值     a**=3 相当于:a=a**3

需要注意的是:Python中没有 C++、Java、C语言中的  ++、-- 运算。学习过其他语言的学者需要注意。

3、比较运算符:
比较运算符通常返回布尔型的值 True 或 False

< :小于运算       例如: 4<5    # True
<=:小于等于运算    例如: 4<=5   # True
> :大于运算       例如: 4>5    # False
>=:大于等于运算    例如: 4>=5   # False
==:等于运算       例如: 4==5   # False
!=:不等于运算     例如: 4!=5   # True

4、逻辑运算操作

and 与 :运算符两边的值,若第一个为真,则返回第二个值;若第一个为假,则返回第一个
例如:1 and 2 :返回 2 ; 3 and 0 :返回 0 ; 0 and 3 : 返回 0  ; True and False :返回 False
注意:and 

or  或 :运算符两边的值,若第一个为真,则返回第一个值;若第一个为假,则返回第二个
例如:1 or 0 :返回 1 ; 0 or 0 :返回 0(or 右边的 0) ; 0 or 5 :返回 5; True and False :返回 True

not 非 :取反,返回值为 bool型
例如:not 1:返回 False ; not 0 : 返回 True ; not 4 :返回 False ; not False:返回 true

5、in / not in 运算符(成员运算符)

in:用判断一个变量或者值是否在某个确定的可迭代对象中,如果在,返回 True,如果不在返回 False
例如:
a = [1,2,3,4]
print(1 in a)    #True
print(5 in a)    #False

not in:用判断一个变量或者值是否不在某个确定的可迭代对象中,如果不在,返回 True,如果在返回 False
例如:
a = [1,2,3,4]
print(1 not in a)    #False
print(5 not in a)    #True

6、is 运算符(身份运算)

6.1 在Python中,is 与 ‘==’ 的概念不同,‘==’运算符是判断两个值是否相等,而is是判断两个值在内存中的内存地址是否相等。

6.1除整形、字符串外,任何类型的值相同情况下,他们在内存中的地址都不相同,如:字典、列表、集合、元组
例如:
a = {1}
b = {1}
print(a == b)    #True
print(a is b)    #False

6.3 用 is 和 ‘==’ 判断字符串,返回结果相同
例如:
a = 'abcd'
b = 'abcd'
print(a == b)    #True
print(a is b)    #True

6.4 整形数在 -5~256 范围内,用 is 和 ‘==’ 判断,返回结果相同,超出范围,结果不同。
例如:
a = 25
b = 25
print(a == b)    #True
print(a is b)    #True
a = 1000
b = 1000
print(a == b)    #True
print(a is b)    #False

7、运算符的优先级
括号 ‘()’ 优先级最大,优先运算括号内的表达式

**  指数 (最高优先级)
~ + -   按位翻转, 一元加号和减号 (最后两个的方法名为 +@ 和 -@)
* / % //    乘,除,取模和取整除
+ - 加法减法
>> <<   右移,左移运算符
&   位 'AND'
^ | 位运算符
<= < > >=   比较运算符
== !=    等于运算符
= %= /= //= -= += *= **=    赋值运算符
is is not   身份运算符
in not in   成员运算符
not or and  逻辑运算符

8、混合类型自动升级:

例如
    1 +2.14   返回类型为浮点型  3.14

9、本文未介绍位运算相关,后期会追加。急需的小伙伴可以参考如下文章:

https://blog.csdn.net/xtj332/article/details/6639009

猜你喜欢

转载自blog.csdn.net/E_I_D_/article/details/81953134