原标题:Python的运算符 (下)

这次我们来学习Python中的运算符的剩余部分,上一篇文章请访问 一分钟学Python| Python的运算符 (上)

位运算符

位运算符是把数字看作二进制来进行计算的。Python中的按位运算法则如下:

设变量 a 为 60,b 为 13

化为二进制

a = 0011 1100

b = 0000 1101

运算符

功能

实例

&

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

(a & b) 输出结果 12 ,二进制解释:0000 1100

|

按位或运算符:只要对应的二个二进位有一个为1时,结果位就为1

(a|b) 输出结果 61 ,二进制解释:0011 1101

^

按位异或运算符:当两对应的二进位相异时,结果为1

(a ^ b) 输出结果 49 ,二进制解释:0011 0001

~

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

(~a ) 输出结果 -61 ,二进制解释:1100 0011, 在一个有符号二进制数的补码形式。

<<

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

a << 2 输出结果 240 ,二进制解释:1111 0000

>>

右移动运算符:把">>"左边的运算数的各二进位全部右移若干位,">>"右边的数指定移动的位数

a >> 2 输出结果 15 ,二进制解释:0000 1111

代码实例

a = 60# 60 = 0011 1100

b = 13# 13 = 0000 1101

c = 0

c = a & b; # 12 = 0000 1100

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

c = a | b; # 61 = 0011 1101

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

c = a ^ b; # 49 = 0011 0001

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

c = ~a; # -61 = 1100 0011

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

c = a << 2; # 240 = 1111 0000

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

c = a >> 2; # 15 = 0000 1111

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

结果如图

Python逻辑运算符

设变量 a 为 1, b为 2:

运算符

逻辑表达式

功能

实例

and

x and y

布尔"与" - 如果 x 为 False,x and y 返回 False,否则它返回 y 的计算值。

(a and b) 返回 2

or

x or y

布尔"或" - 如果 x 是 True,它返回 x 的值,否则它返回 y 的计算值。

(a or b) 返回 1

not

not x

布尔"非" - 如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。

not(a and b) 返回 False

代码示例

a = 1

b = 2

if( a andb ):

print( "1 - 变量 a 和 b 都为 true")

else:

print( "1 - 变量 a 和 b 有一个不为 true")

if( a orb ):

print( "2 - 变量 a 和 b 都为 true,或其中一个变量为 true")

else:

print( "2 - 变量 a 和 b 都不为 true")

# 修改变量 a 的值

a = 0

if( a andb ):

print( "3 - 变量 a 和 b 都为 true")

else:

print( "3 - 变量 a 和 b 有一个不为 true")

if( a orb ):

print( "4 - 变量 a 和 b 都为 true,或其中一个变量为 true")

else:

print( "4 - 变量 a 和 b 都不为 true")

ifnot( a andb ):

print( "5 - 变量 a 和 b 都为 false,或其中一个变量为 false")

else:

print( "5 - 变量 a 和 b 都为 true")

结果如下图

Python运算符优先级

以下表格列出了从最高到最低优先级的运算符:

运算符

描述

**

指数 (最高优先级)

~ + -

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

* / % //

乘,除,求余数和取整除

+ -

加法减法

>> <<

右移,左移运算符

&

位 'AND'

^

位运算符

<= < > >=

比较运算符

== !=

等于运算符

= %= /= //= -= += *= **=

赋值运算符

not and or

逻辑运算符

代码示例

a = 20

b = 10

c = 15

d = 5

e = 0

e = (a + b) * c / d #( 30 * 15 ) / 5

print( "(a + b) * c / d 运算结果为:", e)

e = ((a + b) * c) / d # (30 * 15 ) / 5

print( "((a + b) * c) / d 运算结果为:", e)

e = (a + b) * (c / d); # (30) * (15/5)

print( "(a + b) * (c / d) 运算结果为:", e)

e = a + (b * c) / d; # 20 + (150/5)

print( "a + (b * c) / d 运算结果为:", e)

责任编辑:

python运算符解释_Python的运算符 (下)相关推荐

  1. python 隐藏进程_python在windows下创建隐藏窗口子进程的方法

    python在windows下创建隐藏窗口子进程的方法 发布于 2015-11-08 20:56:53 | 213 次阅读 | 评论: 0 | 来源: 网友投递 Python编程语言Python 是一 ...

  2. python字符串解释_python基础之字符串详解

    1.Python环境配置: 下载好之后安装,注意勾选环境变量. 2.写python一定要注意代码的缩进. 2.字符串: (1).字符串是从左到右是从0开始索引,从右到左是从-1开始.遵循包前不包后原则 ...

  3. python android自动化_python在Android下的自动化测试用法

    # This Python file uses the following encoding: utf-8 from com.android.monkeyrunner import MonkeyRun ...

  4. python精确计时_PYTHON在WINDOWS下高精度计时的体会

    2011-02-23 14:51:19 其实也是WINDOWS下的通用办法啦,只不过我用PYTHON表达. 用win32api.GetSystemTime()不是太精确,值15毫秒才变一下,最好用ti ...

  5. python模拟按键_Python实现windows下模拟按键和鼠标点击的方法

    本文实例讲述了Python实现windows下模拟按键和鼠标点击的方法.分享给大家供大家参考.具体如下: 这段代码可以模拟在窗口上按下按键.鼠标左键点击.鼠标右键点击.鼠标双击等等. 前提先要安装 p ...

  6. linux下python编程实例_python实现linux下使用xcopy的方法

    本文实例讲述了python实现linux下使用xcopy的方法.分享给大家供大家参考.具体如下: 这个python函数模仿windows下的xcopy命令编写,可以用在linux下 #!/usr/bi ...

  7. python批量添加水印_python 给目录下的图片批量加水印

    python 给目录下的图片批量加水印 water.py 放到 图片文件夹里 然后cd 到当前文件夹 python water.py #coding=utf-8 import Image import ...

  8. python字符串解释_Python学习:字符串的简单解释,深入浅出

    字符串是python很常见的一种数据类型,比如日志的打印,程序中函数的注释,数据库的访问,变量的操作都需要用到字符串. 一.字符串基础 字符串是由独立字符组成的一个序列,通常包含在单引号('')双引号 ...

  9. 爬虫python名词解释_python爬虫

    Python爬虫是用Python编程语言实现的网络爬虫,主要用于网络数据的抓取和处理,相比于其他语言,Python是一门非常适合开发网络爬虫的编程语言,大量内置包,可以轻松实现网络爬虫功能. Pyth ...

最新文章

  1. 【控制】《多智能体系统的动力学分析与设计》徐光辉老师-目录
  2. https://toonify.photos/ for Disney style
  3. c语言case的应用,switch、case的使用
  4. TensorFlow实验(2)
  5. duration java_Java Duration类| toMinutes()方法与示例
  6. php过滤处理手机自带Emoji表情
  7. 以视频爬取实例讲解Python爬虫神器Beautiful Soup用法
  8. python获取每月的最后一天_关于日期:使用Python获取本月的最后一天
  9. 321电商学院 与华中师大联手 - 2014-10-22
  10. Shell脚本-tr 将大写字母变为小写
  11. OTT网络电视直播APP运营平台-如何保证视频的流畅性
  12. 自我保护第一课加密与防破解
  13. 计算机专业未来规划作文英文,以“未来的职业”写一篇英语作文
  14. C#--扁平化窗体UI
  15. The vulnerabilities were addressed in OpenSSL 1.02f/1.01r. cocos2d 2.2.6
  16. GFE2022第43届广州特许连锁加盟展览会
  17. 深度学习环境搭建之七_Ubuntu安装微信、QQ、百度网盘
  18. python算法一:枚举法
  19. 基于AT89C51单片机的交通灯控制系统的设计
  20. 【小龙】我想走一条不同的路,我要走我自己的路——大二转专业计院学生的个人思考

热门文章

  1. 邮件阅读总数统计小技巧
  2. 最长公共子序问题 ( LCS, Longest Commom Subsequence )
  3. ctfshow-misc入门 1-30
  4. android 8 奕骆,全球最大电池容量手机 奕骆D6000发布
  5. Win10平台中ANSYS 18.2二次开发环境搭建及关联教程
  6. uploadify 发送多余请求的问题
  7. html5响应式布局实例,CSS3响应式布局案例
  8. java版飞鸽传书源代码
  9. 基于STM32单片机闭环步进电机驱动调速仿真(仿真+源码+全套资料)
  10. Marr-Hildreth 边缘检测 OpenCV C++实现