Python教程(13)——Python运算符详解|算术运算符|比较运算符|逻辑运算符|位运算符

这篇具有很好参考价值的文章主要介绍了Python教程(13)——Python运算符详解|算术运算符|比较运算符|逻辑运算符|位运算符。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Python的运算符是用于执行各种操作的符号或符号组合。它们用于操作数据并进行算术、比较、逻辑和其他类型的运算。我们所熟知的加减乘除也是运算符中的一种。Python提供了多种类型的运算符,有算术运算符,比较运算符,赋值运算符,逻辑运算符,位算符等等。

算术运算符

算术运算符是Python中比较简单的运算符,我们小学所学习的加减乘除也是算术运算符中的一部分,用于执行数学运算,具体有以下算术运算符。

1、 加法运算符(+):将两个操作数相加。

a = 10
b = 5
c = a + b
print(c)   # 输出:15

2、 减法运算符(-):从第一个操作数中减去第二个操作数。

a = 10
b = 5
c = a - b
print(c)   # 输出:5

3、 乘法运算符(*):将两个操作数相乘。

a = 10
b = 5
c = a * b
print(c)   # 输出:50

4、 除法运算符(/):将第一个操作数除以第二个操作数,结果为浮点数。

a = 10
b = 5
c = a / b
print(c)   # 输出:2.0

5、 取余运算符(%):返回第一个操作数除以第二个操作数的余数。

a = 10
b = 3
c = a % b
print(c)   # 输出:1

6、 幂运算符(**):将第一个操作数作为底数,第二个操作数作为指数进行幂运算。

a = 2
b = 3
c = a ** b
print(c)   # 输出:8

7、 整除运算符(//):将第一个操作数除以第二个操作数并向下取整。

a = 10
b = 3
c = a // b
print(c)   # 输出:3

算术运算符总的来说还是比较简单的,但是有些情况还是需要注意。比如有些浮点数相加,结果并不一定是你认为的结果,像
0.1+0.2结果就是0.30000000000000004
0.1*0.2结果就是0.020000000000000004
0.3-0.2结果就是0.09999999999999998
很违反直觉,但是确实是这样的,这个涉及到计算机用二进制表示小数的精度问题。
还有就是浮点数和整数进行算术运算符,结果应该也是浮点数。

比较运算符

Python的比较运算符用于比较两个值之间的关系,返回布尔值(True或False),我们小学所学的大于小于就是比较运算符,具体有以下比较运算符。

1、 等于运算符(==):用于检查两个操作数是否相等。

2、 不等于运算符(!=):用于检查两个操作数是否不相等。

3、 大于运算符(>):用于检查第一个操作数是否大于第二个操作数。

4、 小于运算符(<):用于检查第一个操作数是否小于第二个操作数。

5、 大于等于运算符(>=):用于检查第一个操作数是否大于或等于第二个操作数。

6、 小于等于运算符(<=):用于检查第一个操作数是否小于或等于第二个操作数。

a = 5
b = 10
print(a == b)   # 输出:False
print(a != b)   # 输出:True
print(a > b)   # 输出:True
print(a < b)   # 输出:True
print(a >= b)   # 输出:False
print(a <= b)   # 输出:True

赋值运算符

Python的赋值运算符用于将值赋给变量,就是将左边的值赋值给右边,赋值运算符中最重要的符号就是=,然后在结合其他的加减乘除可以扩展出其他的赋值运算符,以下是Python的赋值运算符。

1、 等号运算符(=):将右边的值赋给左边的变量。

2、 加等于运算符(+=):将右边的加到左边的变量上,并将结果赋给左边的变量。

3、 减等于运算符(-=):将右边的值从左边的变量中减去,并将结果赋给左边的变量。

4、 乘等于运算符(*=):将右边的值乘以左边的变量,并将结果赋给左边的变量。

5、 除等于运算符(/=):将左边的变量除以右边的值,并将结果赋给左边的变量。

6、 取模等于运算符(%=):将左边的变量对右边的值取模,并将结果赋给左边的变量。

大家需要注意的是,这里的赋值运算符可能与数学上的运算符有点出入,但是实际上是一样的,这里将加减乘除+-*/写在等号的左边,其实是和常规理解的写法是一样的,比如,a += 3就是 a = a + 3,记住这就是一样的。

a = 10
a %= 3
print(a)   # 输出:1
b = 2
b *= 3
print(b)   # 输出:6

逻辑运算符

编程中逻辑运算与数学中的逻辑运算是一样的,Python的逻辑运算符用于在布尔值之间进行逻辑运算,返回布尔值结果(True或False)。

逻辑运算类型

1、 逻辑与运算符(and):当所有操作数都为True时,结果为True;只要有一方为False,那么结果为False。

x = 5
y = 10
z = (x < 10 and y > 5)
print(z)   # 输出:True
w = (x > 10 and y > 5)
print(w)   # False

2、 逻辑或运算符(or):当有一个操作数为True时,那么结果为True;只有所有的操作数为False,那么结果为False。

x = 5
y = 10
z = (x < 10 or y < 5)
print(z)   # 输出:True
w = (x > 10 or y < 5)
print(w)   # False

3、 逻辑非运算符(not):当操作数为True时,结果为False;当操作数为False时,结果为True。

x = 5
y = 10
z = not(x < 10 and y > 5)
print(z)   # 输出:False

逻辑运算本质

逻辑运算符返回的结果一般都是布尔值,但并不是说绝对都是返回布尔值的。比如以下情况就不输出True或者False了。

x = 5
y = 10
z = (x and y)
print(z)   # 输出:10
w = (x or y)
print(w)   # 输出:5

在Pyhon当中,任何非0或非空对象都被视为True,像大于0或者小于0的数,都是被视为True。而整数0,浮点数0,空字符串,空列表,空元组等等,都被视为False。但同时需要明白,这个并不是说2 == True的结果就是为True。在布尔值中,True是1,False是0。

另外需要注意的是,逻运算符是短路运算符,即在计算表达式期间,如果已经确定结果,就不再计算剩下表达式。
例如,在使用与运算符(and)时,第一个操作数为False,那么第二个操作数将不会被计算,因为无论第二个操作数是什么,都不会影响最后的结果了,并且输出第一个操作数的值。如果第一个操作数是True,那么就会继续计算第二个操作数的值,并把第二个操作数的值作为结果输出。
同样地,使用或算符(or)时,如果第一个操作数为True,那第二个操作数将不会被计算,因为无论第二个操作数是什么,都不会影响最后的结果了,并且输出第一个操作数的值。如果第一个操作数是False,那么就会继续计算第二个操作数的值,并把第二个操作数的值作为结果输出。
大家可以结合一下上面的结论和例子来理解,并且自己可以动手实践起来。

位运算符

位运算符在数学中并不常见,所以可能很多初学编程的朋友不大理解。位运算符用于对整数进行位级操作,也就是将一个整数转化成二进制数,然后两个二进制数进行的各种操作,位运算符一般常见与底层操作相关的。

1、 按位与(&):对两个操作数的每个位执行与操作,如果两个对应的位都是1,则结果为1,有任何一个方为0,结果就为0。和逻辑与运算有点像。

a = 5   # 二进制表示为 0101
b = 3   # 二进制表示为 0011

result = a & b   # 二进制表示为 0001
print(result)  # 输出:1

在上述示例中,按位与运算符(&)对变量 a 和 b 进行位运算。结果是将 a 和 b 的对应位进行与操作,得到的二进制数为 0001,转换成十进制为 1。

2、 按位或(|):对两个操作数的每个位执行或操作,如果两个对应的位有一个1,则结果为1,只有两个对应的位为0,结果才为0。和逻辑或运算有点像。

a = 5   # 二进制表示为 0101
b = 3   # 二进制表示为 0011

result = a | b   # 二进制表示为 0111
print(result)  # 输出:7

在上述示例中,按位或运算符(|)对变量 a 和 b 进行位运算。结果是将 a 和 b 的对应位进行或操作,得到的二进制数为 0111,转换成十进制为 7。

3、 按位异或(^):对两个操作数的每个位执行异或操作,如果两个对应的位不相同,则结果为1,否则为0。也就是两个对应的位都是1或者都是0,那么结果为0,只要不相同,就是1。

a = 5   # 二进制表示为 0101
b = 3   # 二进制表示为 0011

result = a ^ b
print(result)  # 输出:6

在上述示例中,按位异或运算符(^)对变量 a 和 b 进行位运算。结果是将 a 和 b 的对应位进行异或操作,得到的二进制数为 0110,转换成十进制为 6。

4、 按位取反(~):对操作数的每个位执行取反操作,将1变为0,将0变为1。

a = 5 # 二进制表示为 0101

result = ~a    
print(result)  # 输出:-6

这里需要注意的是,我们在之前按位与或者按位或中,是为了书写方便,实际上5和3在32位机器上的内存里的表示是这样的。

5  -  0000 0000 0000 0000 0000 0000 0000 0101
3  -  0000 0000 0000 0000 0000 0000 0000 0001

因为上面的计算中,并不需要前面那么多位,所以我们就只写后面几个,但是按位取反就需要完整的表示出来,对5按位取反就是下面这个

1111 1111 1111 1111 1111 1111 1111 1010

这个在内存当中是个 -6,至于为什么,大家也不用管,有兴趣的可以去查找相关资料来了解,负数的补码表示方式,本文就不讨论这个问题。

5、 按位左移(<<):将操作数的所有位向左移动指定的位数。

a = 5   # 二进制表示 0101

result = a << 2
print(result)  #:20

在述示例中,按位左移运算符(<<)将变量a的所有位向左移2位。结果是将a的二进制数 0101 左移2位,得到的二进制数为 10100,转换成十进制为 20。

6、 按位右移(>>):将一个操作数的所有位向右移动指定位数。

a = 5   # 二进制表示为 0101

result = a >> 1
print(result)  # 输出:2

在述示例中,按位右运算符(>>)将变量a的所有位向右移动1位。结果是将a的二进制数 0101 右移1位,得到的二进制数为 0010,转换成十进制为 2。

这些位运算符可以用于对整数进行位级操作。通过使用这些运算符,你可以在位级上处理二进制数据,提取或操作其中的位,满足特定需求。请注意,位运算符仅适用于整数类型。

更多精彩内容,请关注同名公众:一点sir(alittle-sir)
文章来源地址https://www.toymoban.com/news/detail-704181.html

到了这里,关于Python教程(13)——Python运算符详解|算术运算符|比较运算符|逻辑运算符|位运算符的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Oracle PL/SQL基础语法学习13:比较运算符

    Oracle PL/SQL基础语法学习12:短路求值 Oracle PL/SQL基础语法学习13:比较运算符 Oracle PL/SQL基础语法学习14:BOOLEAN表达式 【免责声明】文章仅供学习交流,观点代表个人,与任何公司无关。 编辑|SQL和数据库技术(ID:SQLplusDB) 比较运算符是 PL/SQL 语言中的基本元素之一,它们被用于

    2024年02月05日
    浏览(50)
  • 【Java探索之旅】运算符解析 算术运算符,关系运算符

    🎥 屿小夏 : 个人主页 🔥个人专栏 : Java编程秘籍 🌄 莫道桑榆晚,为霞尚满天! Java中运算符是非常重要的概念,它们用于对变量进行操作和比较,是实现各种算法和逻辑的基础。本文将介绍Java中的算术运算符和关系运算符,解释它们的基本用法和注意事项,帮助读者更

    2024年03月15日
    浏览(54)
  • 运算符之算术运算符、关系运算符、逻辑运算符、复合赋值运算符、其他运算符

    运算符是一种告诉编译器执行特定的数学或逻辑操作的符号。C# 有丰富的内置运算符,分类如下: 算术运算符 关系运算符 逻辑运算符 复合赋值运算符 位运算符 其他运算符 运算符优先级(由高到低) 类别 运算符 结合性 后缀 ()[]-.++-- 从左到右 一元 =-!~ ++ -- (type)* sizeof 从

    2024年02月09日
    浏览(58)
  • 汇编-算术运算符

    下面给出了一些有效表达式和它们的值:

    2024年02月06日
    浏览(45)
  • 【Lua语法】算术、条件、逻辑、位、三目运算符

    加减乘除取余:+ - * / % Lua中独有的:幂运算 ^ 注意: 1.Lua中没有自增自减(++、–),也没有复合运算符(+=、-=) 2.Lua中字符串可以进行算术运算符操作,会自动转成number 如:“10.3” + 1 结果为11.3 大于 小于 大于等于 = 小于等于 = 等于 == 不等于 ~= 返回值依然是bool 注意: 1.与C

    2024年02月11日
    浏览(47)
  • 【Python入门】Python的判断语句(布尔类型和比较运算符)

    前言 📕作者简介: 热爱跑步的恒川 ,致力于C/C++、Java、Python等多编程语言,热爱跑步,喜爱音乐的一位博主。 📗本文收录于Python零基础入门系列,本专栏主要内容为Python基础语法、判断、循环语句、函数、函数进阶、数据容器、文件操作、异常模块与包、数据可视化等,

    2024年02月03日
    浏览(56)
  • 【Python入门篇】——Python中判断语句(布尔类型,比较运算符,if语句)

    作者简介: 辭七七,目前大一,正在学习C/C++,Java,Python等 作者主页: 七七的个人主页 文章收录专栏: Python入门,本专栏主要内容为Python的基础语法,Python中的选择循环语句,Python函数,Python的数据容器等。 欢迎大家点赞 👍 收藏 ⭐ 加关注哦!💖💖 进行判断,只有2个

    2024年02月03日
    浏览(40)
  • SQL 算术运算符:加法、减法、乘法、除法和取模的用法

    存储过程是一段预先编写好的 SQL 代码,可以保存在数据库中以供反复使用。它允许将一系列 SQL 语句组合成一个逻辑单元,并为其分配一个名称,以便在需要时调用执行。存储过程可以接受参数,使其更加灵活和通用。 创建存储过程的语法如下: 执行存储过程的语法如下:

    2024年02月05日
    浏览(57)
  • 第三章:最新版零基础学习 PYTHON 教程(第十五节 - Python 运算符—Python 成员身份和身份运算符)

    在本文中,我们将学习 Python 成员资格和身份运算符。 会员运营商 Python 提供了两个成员资格运算符来检查或验证值的成员资格。它测试序列(例如字符串、列表或元组)中的成员资格。  in 运算符:  “in”运算符用于检查序列中是否存在字符/子字符串/元素。如果在序列中

    2024年02月07日
    浏览(46)
  • [SQL挖掘机] - 比较运算符

    在 sql 中,比较运算符用于比较表达式或值之间的关系,并生成逻辑真(true)或逻辑假(false)的结果。比较运算符在 sql 查询中扮演着重要的角色,具有以下作用和地位: 条件筛选:比较运算符常用于 where 子句中的条件表达式,用于筛选出满足特定条件的数据行。通过使用

    2024年02月16日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包