Python小白学习
Python学习第四课
1. 运算符
1.1 运算符的概念3
运算符⽤于执⾏程序代码运算,会针对⼀个以上操作数项⽬来进⾏运算。例
如:2+3,其操作数是2和3,⽽运算符则是“+”
1.2 运算符的分类
- 算术运算符
- 赋值运算符
- ⽐较运算符(关系运算符)
- 逻辑运算符
- 条件运算符(三元运算符)
2. 算术运算符
-
加法运算符 表现形式 +
-
减法运算符 表现形式 -
注:字符串是没有减法运算的,如上图 -
乘法运算符 表现形式 *
数字的就不说了,字符串的如上图所示效果。 -
除法运算符 表现形式 /
-
// 整除,只会保留计算后的整数位,总会返回⼀个整型
-
% 取模,求两个数相除的余数
10/3=3…1
/ 就不说了,//是整除看下图就知道了返回的是除法的商,%取模也有说法是取余,求余,反正都是一样的,就是返回余数 -
** 幂运算,求⼀个值的⼏次幂
-
这个就是乘方运算了(我的理解)
d是降幂运输算,也就是开平方(开2次方)。
3. 赋值运算符
复制运算符的特殊写法 x = x + 3 其实是和 x += 3 是⼀样的
- += (x+= 3 相当于 x = x + 3 )
- -= (x -= 3 相当于 x= x - 3 )
- *= (x = 3 相当于 x = x 3 )
- **= (x **= 3 相当于 x = x ** 3 )
- /= (x /= 3 相当于 x = x/ 3 )
- //= (x //= 3 相当于 x = x // 3 )
- %= (x %= 3 相当于 x= x % 3 )
4. ⽐较运算符
⽤来⽐较两个值之间的关系,总会返回⼀个布尔值.如果关系成
⽴,返回True,不成立则返回False
- ‘>’ ⽐较左侧值是否⼤于右侧值
- ‘>=’ ⽐较左侧的值是否⼤于或等于右侧的值
- ‘<’ ⽐较左侧值是否⼩于右侧值
- ‘<=’ ⽐较左侧的值是否⼩于或等于右侧的值
- 特殊的⽐较⽅式
== ⽐较两个对象的值是否相等
!= ⽐较两个对象的值是否不相等
is ⽐较两个对象是否是同⼀个对象,⽐较的是对象的id
is not ⽐较两个对象是否不是同⼀个对象,⽐较的是对象的id
is 可以理解为值的对比,a,b的值都是1,1在内存中的ID是不变的。所以是True(我自己的理解是这样的,有其他的解答的,请教教我,嘿嘿。)
5. 逻辑运算符
5.1 not 逻辑⾮
not可以对符号右侧的值进⾏⾮运算对于布尔值,⾮运算会对其进 ⾏取反操作,True变False,False变True
5.2 and 逻辑与
- and可以对符号两侧的值进⾏与运算。 只有在符号两侧的值都为True时,才会返回True,只要有⼀个False就返回False
- 与运算是找False的,
- 如果第⼀个值为False,则不再看第⼆个值
简单说就是 一假全假
5.3 or 逻辑或
- 或运算两个值中只要有⼀个True,就会返回True
- 或运算是找True的
- 这个和(与)正好相反 一真全真,2个条件只要有一个成立,就是True。必须都不成立,才是False
5.4 ⾮布尔值的与或运算
-
当我们对⾮布尔值进⾏与或运算时,Python会将其当做布尔值运算,最终会返回原值
0 ,空串 , None 还有一些表示空性的值会转换为False ,其余的都为True -
⾮布尔值与运算的规则
与运算是找False的,如果第⼀个值是False,则不看第⼆个值。如果第⼀个值是False,则直接返回第⼀个值,否则返回第⼆个值 -
⾮布尔值或运算的规则
或运算是找True的,如果第⼀个值是True,则不看第⼆个值。如果第⼀个值是True,则直接返回第⼀个值,否则返回第⼆个值
6. 条件运算符(三元运算符)
语法:语句1 if 表达式 else 语句2
如下图:
条件运算符在执⾏时,会先对条件表达式(if 2>1)进⾏求值判断
如果判断结果为True,则执⾏语句1(“haha”),并返回执⾏结果
如果判断结果为False,则执⾏语句2(“xxx”),并返回执⾏结果
这个图也是一样的,这是一个赋值的,也是一样的。
7. 运算符的优先级
作业:
以4种格式化字符串的⽅式来实现 521 xxx 嫁给我好吗?