Python基础教程:七种运算符

枫铃3年前 (2021-10-03)Python266

1.算术运算符

算数运算符包含有+(加)、-(减)、*(乘)、/(除)、//(地板除)、**(幂运算)、%(取余)

/ (结果为小数)

var1 = 2
var2 = 2
res = var1 / var2
print(res)

//

  • 被除数 ➗ 除数 = 商
  • 注意点:如果被除数或者除数是小数,那么在正常结果后加上.0变成小数
var1 = 2
var2 = 2.0
res = var1 // var2
print(res)

%

'''
Python学习交流,免费公开课,免费资料,
免费答疑,系统学习加QQ群:579817333 
'''
var1 = 7
var2 = 4
res = var1 % var2
print(res) # 3

var1 = -7
var2 = 4
res = var1 % var2
print(res) # -3 + 4 = 1

var1 = 7
var2 = -4
res = var1 % var2
print(res) # 3 + (-4) = -1

var1 = -7
var2 = -4
res = var1 % var2
print(res) # -3

**

res = 3 ** 2
print(res)

2.比较运算符

比较运算符包含有>(大于)、<(小于)、>=(大于等于)、<=(小于等于)、==(等于)、!=(不等于)
比较运算符的结果要么是True,要么是False,只有两个值

==

# 这个符号是在做比较,比较==两边的数值是否一样
res = 5 == 9
print(res)

3.赋值运算符

赋值运算符包含有=、+=、-=、*=、/=、//=、%=、**=

= 将右侧的值赋值给左侧变量

*=

"""
var1 *= var2 相当于 var1 = var1 * var2
"""
var1 *= var2
print(var1)

4.成员运算符

  • 成员运算符包含有in、not in(针对于容器型数据)
  • in或not in是判断某个值是否包含在(或不在)一个容器类型数据当中
  • 字符串判断时,必须是连续的片段
  • 针对于字典,判断的是字典的键,而不是字典的值
'''
Python学习交流,免费公开课,免费资料,
免费答疑,系统学习加QQ群:579817333 
'''
strvar = "今天天气要下雨,赶紧回家收衣服"
res = "今" in strvar
res = "赶回" in strvar
print(res)

5.身份运算符

身份运算符包含有is和is not(检测两个数据id是否相同),可参考python3.6变量缓存机制

6.逻辑运算符

逻辑运算符包含有and、or、not

and 逻辑与

"""全真则真,一假则假"""
res = True and True    # True
res = True and False   # False
res = False and True   # False
res = False and False  # False
print(res)

or 逻辑或

"""一真则真,全假则假"""
res = True or True    # True
res = False or True   # True
res = True or False   # True 
res = False or False  # False
print(res)

not 逻辑非

res = not True
res = not False
print(res)

逻辑短路的两种情况

如果短路,无论后面的表达式是True还是False都已经无法改变结果,后面的代码不执行

  • True or 表达式
  • False and 表达式

7.位运算符

位运算符包含有&(按位与)、|(按位或)、^(按位异或)、<<(左移)、>>(右移)、~(按位非)

& 按位与

'''
Python学习交流,免费公开课,免费资料,
免费答疑,系统学习加QQ群:579817333 
'''
var1 = 19
var2 = 15
res = var1 & var2
"""
000 ... 10011
000 ... 01111
000 ... 00011 => 3

^ 按位异或

"""
两个值不相同,返回True
两个值相同,返回False
"""
var1 = 19
var2 = 15
res = var1 ^ var2
"""
000 ... 10011
000 ... 01111
000 ... 11100
"""

<< 左移与>> 右移

"""
左移:m乘n的n次幂
右移:m地板除n的n次幂
"""
# res = m << n
res = 5 << 3 # 40
res = 5 >> 1 # 2
print(res)

~ 按位非

# 针对于补码进行操作,按位取反,包含每一位
# 计算公式:-(n+1)
res = ~19
print(res)
"""
原码:000 ... 10011
反码:000 ... 10011
补码:000 ... 10011

补码:   000 ... 10011
按位非: 111 ... 01100

补码:111 ... 01100
反码:100 ... 10011
原码:100 ... 10100 => -20
"""

总结

个别运算符

  • 运算符优先级最高: **
  • 运算符优先级最低: =
  • () 可以提升优先级

同一种类运算符

  • 算术运算符: 乘除 > 加减
  • 逻辑运算符: () > not > or
  • 位运算符: (<<、>>) > & > ^ > |

整体排序

算数运算符 > 位运算符 > 比较运算符 > 身份运算符 > 成员运算符 > 逻辑运算符 > 赋值运算符

相关文章

利用python同步windows和linux文件

写python脚本的初衷,每次在windows编辑完文件后,想同步到linux上去,只能够登录服务器,...

爬虫基本原理

爬虫基本原理 一、爬虫是什么? 百度百科和维基百科对网络爬虫的定义:简单来说爬虫就是抓取目标网站内容的工具,一般是根据定义的行...

Django 函数和方法的区别

函数和方法的区别 1、函数要手动传self,方法不用传 2、如果是一个函数,用类名去调用,如果是一个方法...

Django 知识补漏单例模式

单例模式:(说白了就是)创建一个类的实例。在 Python 中,我们可以用多种方法来实现单例模式&#x...

Django基础知识MTV

Django简介 Django是使用Python编写的一个开源Web框架。可以用它来快速搭建一个高性能的网站。 Django也是一个MVC框架。但是在Dj...

Python mysql 索引原理与慢查询优化

一 介绍 为何要有索引? 一般的应用系统,读写比例在10:1左右,而且插入操作和一般的更新操作很少出现性能问题,...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。