本周第二更
一支预防针打给你,全文内容较长,花点时间花点耐心,你会有收获
传送门
无字天书之Python第一页
无字天书之Python第二页
无字天书之Python第三页
无字天书之Python第四页
基础运算符(六大类)
- 算术运算符
- 比较运算符
- 赋值运算符
- 逻辑运算符
- 成员运算符
- 身份运算符
算术运算符
算术运算符顾名思义就是我们做数字计算的时候用到的运算符,当然,加减乘除肯定都有,除此之外呢,还有程序中常见的取摸、取幂和取整除。
运算符 | 描述 |
---|---|
+ | 加 |
- | 减 |
* | 乘 |
/ | 除 |
% | 取模 - 返回除法的余数 |
** | 幂 - 返回x的y次幂 |
// | 取整除 - 向下取接近除数的整数 |
举例子:
# 无字天书第五页
# 算术运算符
a =20
b=20
print("算式运算符加法",a+b)
a=40
b=20
print("算式运算符减法", a-b)
a=20
b=20
print("算式运算符乘法",a*b)
a=40
b=20
print("算式运算符除法",a/b)
a=41
b=20
print("算式运算符取模",a%b)# 41除以20 整除2 余下 1
a=2
b=3
print("算式运算符幂次方", a**b)# 2x2x2=8
a=15
b=5
print("算式运算符取整除",a//b)# 符合四舍五入的原则
# 上面的例子都整形的计算,如果是不同类型的数据运算,会发生隐式类型转换。
# 类型转换的规则由低等向高等转换。
# bool(布尔) < int(整形) < float(浮点型) < complex(复数)
a=1
b=1.5
print("类型转换加法",a+b,type(a+b))#类型转换加法 2.5 <class 'float'>
a=True
b=2.5
print("True在算术运算的代表",a+b,type(a+b))# True代表1
a=False
b=2.5
print("False在算术运算的代表",a+b,type(a+b))# False代表0
注意True在算术中代表1,False代表0
Python提供了内置的算术函数如下图:
抽取一些进行测试
# 内置函数
print('!!!!内置函数讲解!!!!')
# abs() 返回一个数的绝对值。实参可以是整数或浮点数。如果实参是一个复数,返回它的模。
print('数值-1的绝对值:',abs(-1))
# float() 返回从数字或字符串 x 生成的浮点数。
print("浮点型转换:", float(1))
# pow(x,y) 返回 x 的 y 次幂
print("10的3次幂为:", pow(10, 3))
# round() 返回 number 舍入到小数点后 ndigits 位精度的值。
print("四舍五入为:", round(5.5))
# sum(iterable[, start]) 从 start 开始自左向右对 iterable 中的项求和并返回总计值。 start 默认为 0。 iterable 的项通常为数字,开始值则不允许为字符串。
print("集合求和结果为:", sum({1, 2, 3 ,4}))
# bin() 将一个整数转变为一个前缀为“0b”的二进制字符串。
print("整数20的二进制为:", bin(20))
# chr() 返回 Unicode 码位为整数 i 的字符的字符串格式。
print("Unicode 为 97 的字符串:", chr(97))
# ord() 对表示单个 Unicode 字符的字符串,返回代表它 Unicode 码点的整数。
print("字符串 a 的 Unicode 码:", ord('a'))
# bool() 返回一个布尔值,True 或者 False。
print("123 的 boolean 值为:", bool(123))
print("空字符串的 boolean 的值为:", bool(''))
比较运算符
运算符 | 描述 |
---|---|
== | 等于 - 比较对象是否相等 |
!= | 不等于 - 比较两个对象是否不相等 |
> | 大于 - 返回x是否大于y |
< | 小于 - 返回x是否小于y。所有比较运算符返回1表示真,返回0表示假。这分别与特殊的变量True和False等价。注意,这些变量名的大写。 |
>= | 大于等于 - 返回x是否大于等于y。 |
<= | 小于等于 - 返回x是否小于等于y。 |
不多BB直接测试代码就完事
# 比较运算符
print('!!!!比较运算符!!!!')
a=20
b=20
print(a==b)#True
print(a!=b)#False
print(a>b)#False
print(a<b)#False
print(a>=b)#True
print(a<=b)#True
赋值运算符
运算符 | 描述 |
---|---|
= | 赋值运算符 |
+= | 加法赋值运算符,c += a 等效于 c = c + a |
-= | 减法赋值运算符,c -= a 等效于 c = c - a |
*= | 乘法赋值运算符,c *= a 等效于 c = c * a |
/= | 除法赋值运算符,c /= a 等效于 c = c / a |
%= | 取模赋值运算符,c %= a 等效于 c = c % a |
**= | 幂赋值运算符,c **= a 等效于 c = c ** a |
//= | 取整除赋值运算符,c //= a 等效于 c = c // a |
代码走起:
# 赋值运算符
print('!!!赋值运算符!!!')
a=20
b=20
c=a+b
print('赋值运算符=:',c)
c+=a # 40+20
print('加法赋值运算符,c += a 等效于 c = c + a:',c)
c-=a # 60-20
print('减法赋值运算符,c -= a 等效于 c = c - a',c)
c*=a #40*20
print('乘法赋值运算符,c *= a 等效于 c = c * a',c)
c/=a # 800/20
print('除法赋值运算符,c /= a 等效于 c = c / a',c)
c%=a # 40%20 整取 没有余数
print('取模赋值运算符,c %= a 等效于 c = c % a',c)
c=2
a=2
c**=a #2*2
print('幂赋值运算符,c **= a 等效于 c = c ** a',c)
c//=a
print('取整除赋值运算符,c //= a 等效于 c = c // a',c)
并列赋值问题
# 并列赋值 A,B=a.b
print('!!!并列赋值!!!')
a,b=10,20
print(a)
print(b)
a,b=a+1,a
print(a)
print(b)
#注意:在Python中a=a+1,b=a这两行代码是同时运行的
逻辑运算符(三种)
and 与、or 或、not 非
and:只有当and两边都是真,结果才是真
or:只要当or一边的是真的,结果就是真
not:反转逻辑值
说的天花乱坠不如上代码自己观察自己看
#逻辑运算符
print('!!!逻辑运算符!!!')
print(True and True)# True
print(True and False)# False
print(True or True)# True
print(True or False)# True
print(False or False)# False
print(not True)# False
print(not False)# True
成员运算符
成员运算符用来判断在指定的序列中有没有找到目标值,这个序列可以是字符串、列表和元祖。
前面的文章尚未介绍列表和元祖,下面的示例仅使用字符串来做演示:
# 成员运算符
print('!!!成员运算符!!!')
str='onlyK'
print('a' in str)#False
print('K' in str)#True
身份运算符
身份运算符用于比较两个对象的存储单元。
# 身份运算符
print('!!身份运算符!!!')
a=20
b=20
print(a is b)#True
print(a is not b)#False
b=30
print(a is b)#False
print(a is not b)#True
函数id()
# 演示函数id()的功能
a=20
b=20
print(id(a) == id(b))#True
其实这个输出结果可以看出来,在 Python ,如果两个数值一样的变量, Python 并不会在内存中重新开辟内存空间,而是会复用已有的内存空间。
end…