Python3学习:运算符集合讲解

简介: Python3学习:运算符集合讲解

Python3学习:运算符集合讲解开讲啦!打开你们的小桌板,开始学习咯!

  1. Python语言支持的运算符

(1)算术运算符

(2)比较(关系)运算符

(3)赋值运算符

(4)逻辑运算符

(5)位运算符

(6)成员运算符

(7)身份运算符

  1. 算术运算符

(1) + (加):两个对象相加

(2) - (减):两个数相减,得到一个负数或者正数

(3) * (乘):两个数相乘或者是返回一个被重复若干次的字符串

(4) / (除):两数相除

(5) % (取模):两数相除,返回除法的余数

(6) ** (幂):返回x的y次幂

(7) // (取整除):向下取接近除数的整数

  1. 比较(关系)运算符:返回True或False

(1) == (等于) :比较两个对象是否相等

(2) != (不等于):比较两个对象是否不相等

(3) > (大于): 返回x是否大于y

(4) < (小于): 返回x是否小于y

(5) >= (大于等于): 返回x是否大于等于y

(6) <= (小于等于): 返回x是否小于等于y

注意:所有比较运算符返回1表示真,返回0表示假。这分别与特殊的变量True和False等价。注意,这些变量名的大写。

本期的Python学习还是干货满满的,接下来继续来看。

  1. 赋值运算符

(1) = (简单的赋值运算符) :c = a + b

(2) += (加法赋值运算符) : a += b 等价于 a = a + b

(3) -= (减法赋值运算符) : a -= b 等价于 a = a - b

(4) = (乘法赋值运算符) : a = b 等价于 a = a * b

(5) /= (除法赋值运算符) : a /= b 等价于 a = a / b

(6) %= (取模赋值运算符) : a %= b 等价于 a = a % b

(7) = (幂赋值运算符) : a = b 等价于 a = a ** b

(8) //= (取整除赋值运算符) : a //= b 等价于 a = a // b

  1. 逻辑运算符

变量a为10,变量b为20

(1) and (布尔与) : 如果 x 为 False,x and y 返回 False,否则它返回 y 的计算值。(a and b)返回20。

(2) or (布尔或):如果 x 是 True,它返回 x 的值,否则它返回 y 的计算值。(a or b)返回10。

(3) not (布尔非):如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。 not(a and b)返回False

  1. 位运算符

(1) & (按位与运算符):参与运算的两个值,如果两个相应位都为1,则该位的结果为1,否则为0(11为1,其余为0)

(2) | (按位或运算符):参与运算的两个值,如果两个相应位其中一个为1,则该位的结果为1,否则为0 (有1为1,00为0)

(3) ^ (按位异或运算符):参与运算的两个值,如果两个相应位一个为1,一个为0,则该位的结果为1,否则为0(异为1,同为0)

(4) ~ (按位取反运算符):对数据的每个二进制位取反,即把1变为0,把0变为1。~x 类似于 -x-1 (1变0, 0变1)

(5) << (左移运算符):运算数的各二进位全部左移若干位,由"<<"右边的数指定移动的位数,高位丢弃,低位补0。

(6) >> (右移运算符):运算数的各二进位全部右移若干位,由">>"右边的数指定移动的位数。

Python3学习:运算符集合讲解

  1. 成员运算符

(1) in : (x in y)判断x是否在序列y中,如果x在序列y中返回True,不在返回False。

(2) not in: (x not in y)判断x不在序列y中,如果x不在序列y中返回True,在序列y中返回False。

  1. 身份运算符

(1) is : is是判断两个标识符是不是引用自一个对象,如果引用的是同一个对象则返回True,否则返回False。

(2) is not : is not是判断两个标识符是不是引用自不同对象,如果引用的不是同一个对象则结果返回True,否则返回False。

  1. 运算符的优先级(由高到低)

运算符 描述

(1) ** 指数 (最高优先级)

(2) ~ + - 按位翻转, 一元加号和减号 (最后两个的方法名为 +@ 和 -@)

(3) * / % // 乘,除,取模和取整除

(4) + - 加法减法

(5) >> << 右移,左移运算符

(6) & 位 'AND'

(7) ^ | 位运算符

(8) <= < > >= 比较运算符

(9) == != 等于运算符

(10) = %= /= //= -= += = *= 赋值运算符

(11) is is not 身份运算符

(12) in not in 成员运算符

(13) not and or 逻辑运算符

  1. is 与 == 区别:

is 用于判断两个变量引用对象是否为同一个,

== 用于判断引用变量的值是否相等。

示例代码:

!/usr/bin/python3

-- coding: utf-8 --

author : liuhefei

Time : 2019/11/4

desc: Python运算符

if name == "__main__":

a = 33

b = 24

# 算术运算符

c1 = a + b # 加法

c2 = a - b # 减法

c3 = a * b # 乘法

c4 = a / b # 除法

c5 = a % b # 取模

c6 = a ** 2 # 幂

c7 = a // b # 取整除

print("加法c1 = ", c1)

print("减法c2 = ", c2)

print("乘法c3 = ", c3)

print("除法c4 = ", c4)

print("取模c5 = ", c5)

print("幂c6 = ", c6)

print("取整除c7 = ", c7)

print("n")

#比较运算符

if (a == b):

print("1 - a 等于 b")

else:

print("1 - a 不等于 b")

if (a != b):

print("2 - a 不等于 b")

else:

print("2 - a 等于 b")

if (a < b):

print("3 - a 小于 b")

else:

print("3 - a 大于等于 b")

if (a > b):

print("4 - a 大于 b")

else:

print("4 - a 小于等于 b")

# 修改变量a,b的值

a = 14

b = 8

if (a <= b):

print("5 - a 小于等于 b")

else:

print("5 - a 大于 b")

if (b >= a):

print("6 - b 大于等于 a")

else:

print("6 - b 小于 a")

print("n")

# 赋值运算符

a = 17

b = 25

c = 0

c = a + b

print("1 - c 的值为:", c)

c += a

print("2 - c 的值为:", c)

c *= a

print("3 - c 的值为:", c)

c /= a

print("4 - c 的值为:", c)

c = 2

c %= a

print("5 - c 的值为:", c)

c **= a

print("6 - c 的值为:", c)

c //= a

print("7 - c 的值为:", c)

print("n")

# 位运算符

x1 = 77 # 100 1101

x2 = 29 # 1 1101

y1 = x1 & x2 # 0000 1101

y2 = x1 | x2 # 0101 1101

y3 = x1 ^ x2 # 0101 0000

y4 = ~x1 # -0b1001110

y5 = x1 << 2 # 0b100110100

y6 = x2 >> 3 # 0000 0011

print("按位与运算(&)y1 = ", y1)

print("按位或运算(|)y2 = ", y2)

print("按位异或运算(^)y3 = ", y3)

print("按位取反运算(~)y4 = ", y4)

print("左移运算(<<)y1 = ", y5)

print("右移运算(>>)y1 = ", y6)

print("n")

# 逻辑运算

n = 13

m = 4

if n and m:

print("1 - 变量n和m都为true")

else:

print("1 - 变量n和m有一个为False")

if n or m:

print("2 - 变量n和m都为True,或其中一个为True")

else:

print("2 - 变量n和m都为False")

if not n:

print("3 - 变量n为False")

else:

print("3 - 变量n为True")

if not (n and m):

print("4 - 变量n和m都为False,或其中一个为False")

else:

print("4 - 变量n和m都为True")

print("n")

# 成员运算符

a1 = 12

b1 = 3

list = [1, 2, 3, 4, 5]

if a1 in list:

print("1 - 变量a1 在给定的列表list中")

else:

print("1 - 变量a1 不在给定的列表list中")

if b1 not in list:

print("2 - 变量b1 不在给定的列表list中")

else:

print("2 - 变量b1 在给定的列表list中")

print("n")

# 身份运算符

s1 = 100

s2 = 'a'

if s1 is s2:

print("1 - s1和s2引用自一个对象")

else:

print("1 - s1和s2来自不同的对象")

if s1 is not s2:

print("2 - s1和s2来自不同的对象")

else:

print("2 - s1和s2引用自同一个对象")

更多的Python学习教程也会继续为大家更新,欢迎大家的补充!

相关文章
|
4月前
|
存储 JavaScript Java
(Python基础)新时代语言!一起学习Python吧!(四):dict字典和set类型;切片类型、列表生成式;map和reduce迭代器;filter过滤函数、sorted排序函数;lambda函数
dict字典 Python内置了字典:dict的支持,dict全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度。 我们可以通过声明JS对象一样的方式声明dict
324 1
|
4月前
|
存储 Java 数据处理
(numpy)Python做数据处理必备框架!(一):认识numpy;从概念层面开始学习ndarray数组:形状、数组转置、数值范围、矩阵...
Numpy是什么? numpy是Python中科学计算的基础包。 它是一个Python库,提供多维数组对象、各种派生对象(例如掩码数组和矩阵)以及用于对数组进行快速操作的各种方法,包括数学、逻辑、形状操作、排序、选择、I/0 、离散傅里叶变换、基本线性代数、基本统计运算、随机模拟等等。 Numpy能做什么? numpy的部分功能如下: ndarray,一个具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组 用于对整组数据进行快速运算的标准数学函数(无需编写循环)。 用于读写磁盘数据的工具以及用于操作内存映射文件的工具。 线性代数、随机数生成以及傅里叶变换功能。 用于集成由C、C++
458 1
|
4月前
|
算法 Java Docker
(Python基础)新时代语言!一起学习Python吧!(三):IF条件判断和match匹配;Python中的循环:for...in、while循环;循环操作关键字;Python函数使用方法
IF 条件判断 使用if语句,对条件进行判断 true则执行代码块缩进语句 false则不执行代码块缩进语句,如果有else 或 elif 则进入相应的规则中执行
522 1
|
5月前
|
存储 JSON 算法
Python集合:高效处理无序唯一数据的利器
Python集合是一种高效的数据结构,具备自动去重、快速成员检测和无序性等特点,适用于数据去重、集合运算和性能优化等场景。本文通过实例详解其用法与技巧。
184 0
|
6月前
|
存储 索引 Python
python 集合的所有基础知识
python 集合的所有基础知识
614 0
|
4月前
|
Python
Python编程:运算符详解
本文全面详解Python各类运算符,涵盖算术、比较、逻辑、赋值、位、身份、成员运算符及优先级规则,结合实例代码与运行结果,助你深入掌握Python运算符的使用方法与应用场景。
351 3
|
4月前
|
存储 Java 索引
(Python基础)新时代语言!一起学习Python吧!(二):字符编码由来;Python字符串、字符串格式化;list集合和tuple元组区别
字符编码 我们要清楚,计算机最开始的表达都是由二进制而来 我们要想通过二进制来表示我们熟知的字符看看以下的变化 例如: 1 的二进制编码为 0000 0001 我们通过A这个字符,让其在计算机内部存储(现如今,A 字符在地址通常表示为65) 现在拿A举例: 在计算机内部 A字符,它本身表示为 65这个数,在计算机底层会转为二进制码 也意味着A字符在底层表示为 1000001 通过这样的字符表示进行转换,逐步发展为拥有127个字符的编码存储到计算机中,这个编码表也被称为ASCII编码。 但随时代变迁,ASCII编码逐渐暴露短板,全球有上百种语言,光是ASCII编码并不能够满足需求
228 4
|
5月前
|
JavaScript Java 大数据
基于python的网络课程在线学习交流系统
本研究聚焦网络课程在线学习交流系统,从社会、技术、教育三方面探讨其发展背景与意义。系统借助Java、Spring Boot、MySQL、Vue等技术实现,融合云计算、大数据与人工智能,推动教育公平与教学模式创新,具有重要理论价值与实践意义。
|
5月前
|
机器学习/深度学习 数据采集 并行计算
多步预测系列 | LSTM、CNN、Transformer、TCN、串行、并行模型集合研究(Python代码实现)
多步预测系列 | LSTM、CNN、Transformer、TCN、串行、并行模型集合研究(Python代码实现)
552 2

推荐镜像

更多