第二篇 Python运算符
1.算术运算符
| 运算符 | 描述 |
| + | 两个值相加 |
| - | 两个值相减 |
| * | 两个值相乘 |
| / | 两个值相除 |
| % | 得到两个数相除的余数 |
| ** | x**y得到x的y次幂 |
| // | 返回两个数相除商的整数部分 |
a =
b = print("+)返回两个值的和:", a + b) #
print("-)返回两个值的差:", a - b) #
print("*)返回两个值的乘积:", a * b) #
print("/)返回两个值的商:", a / b) # 1.6842105263157894
print("%)返回两个值相除的余数:", a % b) #
print("**)返回2的3次幂:", ** ) #
print("//)返回两个值相除的整数部分", a // b) # 1
说明:在Python中,*运算符可以用于字符串,计算的结果就是字符串重复指定次数的结果。
print("*"*30) # ******************************
2.比较运算符
| 运算符 | 描述 |
| == | 比较两个对象是否相等,相等返回true,不相等,返回false |
| != | 比较两个对象是否不相等,不相等返回true,相等返回false |
| > | 比较第一个对象是否大于第二个对象,大于,返回true,否则返回false |
| < | 比较第一个对象是否小于第二个对象,小于,返回true,否则返回false |
| >= | 比较第一个对象是否大于等于第二个对象,大于等于,返回true,否则返回false |
| <= | 比较第一个对象是否小于等于第二个对象,小于等于,返回true,否则返回false |
a = 32
b = 32
print("==)比较两个值是否相等:", a == b) # True
print("!=)比较两个值是否不相等:", a != b) # False
a = 40
b = 32
print(">)比较第一个值是否大于第二个值:", a > b) # True
print("<)比较第一个值是否小于第二个值:", a < b) # False
b = 40
print(">=)比较第一个值是否大于等于第二个值:", a >= b) # True
print("<=)比较第一个值是否小于等于第二个值:", a <= b) # True
3.赋值运算符
| 运算符 | 描述 |
| = | 把右边的值赋给左边的 |
| += | 左边的值等于左边的值加上右边的值 |
| -= | 左边的值等于左边的值减去右边的值 |
| *= | 左边的值等于左边的值乘上右边的值 |
| /= | 左边的值等于左边的值除以右边的值 |
| %= | 左边的值等于左边的值属于右边的值的余数 |
| //= | 左边的值等于左边的值除以右边的值的整数部分 |
| **= | 左边的值等于左边的值的右边值的次幂 |
a =
b =
a += b
print("+=):", a) #
a =
b =
a -= b
print("-=):", a) #
a =
b =
a *= b
print("*=):", a) #
a =
b =
a /= b
print("/=):", a) # 2.1666666666666665
a =
b =
a %= b
print("%=):", a) #
a =
b =
a //= b
print("//=):", a) #
a =
b =
a **= b
print("**=):", a) #
4.位运算符
| 运算符 | 描述 |
| & | 按位与运算符,两个值的相应位都为1,该位结果为1,否则为0 |
| | | 按位或运算符,两个值的相应位其中一个为1,则该位结果为1,否则为0 |
| ^ | 按位亦或运算符,两个值的相应位不相同时,则该结果为1,否则为0 |
| ~ | 按位取反运算符,对数据的每个二进制位取反,即把1变成0,把0变成1 |
| << | 按位左移运算符,把二进制位全部左移若干位 |
| >> | 按位右移运算符,把二进制位全部右移若干位 |
a = #
b = #
c = a | b
print("a|b):", c) #
print("a&b):", a & b) #
print("~a):", ~a) # ~a=-(a+) -6
print("a^b):", a ^ b) #
print("<<):", a << ) #
print(">>):", a >> ) #
注:按位取反的计算公式:~a=-(a+1),a+1然后加上负号,~12的二进制位00001100,加1之后为00001101,十进制为13,加上负号为-13。
5.逻辑运算符
| 运算符 | 描述 |
| and | 布尔与,左边和右边均为True,则返回右边的计算值,否则左边为True,则返回右边的值,右边为True,则返回左边的值 |
| or | 布尔或,如果左边值为True,则返回左边的值,否则返回右边的值 |
| not | 布尔非,如果值为True,则结果为False,如果值为False,则结果为True |
a =
b =
print("and):", a and b) #
a =
b =
print("and):", a and b) #
a =
b =
print("and):", a and b) #
a =
b =
print("or):", a or b) #
a =
b =
print("or):", a or b) #
print("not):", not a) # True
print("not):", not b) # False
说明:在没有()的情况下,优先级:not > and > or,同一优先级从左至右依次计算。
6.成员运算符
| 运算符 | 描述 |
| in | 如果在指定的列表中找到值则返回True,否则返回False |
| not in | 如果在指定的列表中没有找到值则返回True,否则返回False |
lists = [1, 2, 3, 4, 5, 6, 7]
print("in):", (1 in lists)) # True
print("in):", (12 in lists)) # False
print("not in):", (12 not in lists)) # True
7.身份运算符
身份运算符是判断两个对象的内存地址是否一样,即是否是同一个对象的引用。
| 运算符 | 描述 |
| is | 判断两个对象的内存地址是否一样 |
| is not | 判断两个对象的内存地址是否不一样 |
lists = [, , , , , , ]
lists_copy = [, , , , , , ]
print("is):", lists is lists_copy) # False
print("not is):", lists is not lists_copy) # True
print("==):", lists_copy == lists) # True
注:is和==的区别为is判断内存地址是否一样,而==判断的是值是否一样。
8.运算符的优先级
对于运算符的优先级了解即可吧,可以通过括号控制运算符的优先级。
第二篇 Python运算符的更多相关文章
- 第二篇 python进阶
目录 第二篇 python进阶 一 数字类型内置方法 二 字符串类型内置方法 三 列表类型内置方法(list) 四 元组类型内置方法(tuple) 五 字典内置方法 六 集合类型内置方法(self) ...
- [转帖]虚拟内存探究 -- 第二篇:Python 字节
虚拟内存探究 -- 第二篇:Python 字节 http://blog.coderhuo.tech/2017/10/15/Virtual_Memory_python_bytes/ 是真看不懂哦 ...
- Python【第二篇】运算符及优先级、数据类型及常用操作、深浅拷贝
一.运算符及优先级 Python 运算符(算术运算.比较运算.赋值运算.逻辑运算.成员运算) 1.算数运算符 运算符 描述 实例,a=20,b=10 + 加 a+b输出结果30 - 减 a-b输出结果 ...
- Python开发【第二篇】运算符
"+" 加号 __author__ = 'Tang' a = 8 b = 9 c = a + b a = 8.0 b = 9 c = a + b print(c) # 17.0 a ...
- 第二篇 Python图片处理模块PIL(pillow)
本篇包含:16.Point 17.Putalpha 18.Putdata 19.Putpalette 20.Putpixel 21.Quantize 22.R ...
- 接口测试框架——第二篇-python读取excel文件内容
今天完善excel_module.py文件,上代码: # coding: utf-8 import xlrd class ReadExcel(): def __init__(self, file_na ...
- 第二篇 Python初识别及变量名定义规范
第一个Python程序 可以打开notepad或者其他文本编辑器,输入:print("Hello Python!"),将文件保存到任意盘符下,后缀名是 .py 两种python程 ...
- java 学习第二篇关系运算符和布尔值
关系运算符,顾名思义.用来看什么关系.(也就是用来比较) 看下表 JAVA 关系运算符 a=6,b=5 关系运算符 举例 值 解释 > a>b true a大于b < a<b ...
- 第二篇 - python爬取免费代理
代理的作用参考https://wenda.so.com/q/1361531401066511?src=140 免费代理很多,但也有很多不可用,所以我们可以用程序对其进行筛选.以能否访问百度为例. 1. ...
随机推荐
- GET、POST详解 --转自http://hi.baidu.com/richarwu/item/bd43633a6ba62986b611dbcd
HTTP Get,Post请求详解 请求类型 三种最常见的请求类型是:GET,POST 和 HEAD GET:获取一个文档 大部分被传输到浏览器的html,images,js,css, … 都是通过G ...
- fatal error C1083: 无法打开包括文件:“qedit.h”: No such file or directory
VS2010编译 DirectShow一些项目时遇到 错误:fatal error C1083: 无法打开包括文件:“qedit.h”: No such file or directory 解决方法: ...
- Java虚拟机(三):垃圾收集器
一.串行(Serial)收集器 最古老,最稳定 效率高 可能会产生较长的停顿 -XX:+UseSerialGC 新生代.老年代使用串行回收 新生代复制算法 老年代标记-压缩 二.并行收集器 1. Pa ...
- Hadoop之MapReduce(一)简介及简单案例
简介 Hadoop MapReduce是一个分布式运算编程框架,基于该框架能够容易地编写应用程序,进而处理海量数据的计算. MapReduce是一种编程模型,用于大规模数据集(大于1TB)的并行运算. ...
- Jquery中extend使用技巧
在使用Jquery开发的过程中,extend是常用的参数处理函数,特别是对默认值的使用. Jquery的扩展方法原型是: var v=$.extend(dest,src1,src2,[,src3... ...
- Ubuntu无法安装rpm包,ubuntu RPM should not be used directly install RPM packages, use Alien instead!
Ubuntu无法安装rpm包,ubuntu RPM should not be used directly install RPM packages, use Alien instead! 简单来说, ...
- Linux oprofile命令
一.简介 oProfile是Linux平台上的一个功能强大的性能分析工具,支持两种采样(sampling)方式:基于事件的采样(eventbased)和基于时间的采样(timebased),它可以工作 ...
- html页面的局部刷新
有时候我们在做一个动态/静态网页,网页中的某部分需要从服务器获取值但是不能把整个页面都提交到服务器,也就是要对页面做局部刷新,也就是对整个网页无刷新更新值.在这种情况下就需要用JS和XMLHttpRe ...
- Smarty3——foreach
foreach and foreachelse篇 foreach用于遍历数组,可以是非关联数组,与section相比要简单些,在smarty3中可以接受没有名称的属性,也可以使用smarty2有名称 ...
- 第十九课 pluginlib&Nodelet
把rgb摄像头的数据转换为laser的时候使用了Nodelet. pluginlib(插件库) 在ros中有一个plugin的包,下面是一个ROS Plugin Registration的例子 上面包 ...