Python3基础(三) 运算符
Python中的运算符大部分与C语言的类似,但也有很多不同的地方。这里就大概地罗列一下Python 3中的运算符。
一、算术运算符
| 运算符 | 描述 | 示例 |
|---|---|---|
| x + y | 加 | 10 + 20 = 30 |
| x - y | 减 | 10 - 5 = 5 |
| x * y | 乘 | 3 * 6 = 18 |
| x / y | 除-返回浮点数 | 2 / 4 = 0.5 |
| x // y | 取整除 - 返回商的整数部分 | 2 // 4 = 0 |
| x % y | 取余 | 15 % 4 = 3 |
| -x | 异号 | -(-5) = 5 |
| +x | 不变号 | +5 = 5 |
| abs(x) | 取绝对值 | abs(-0.4) = 0.4 |
| int(x) | x转换为整数 | int(5.9) = 5 |
| float(x) | x转换为浮点数 | float(5) = 5.0 |
| complex(re, im) | 返回复数 - re为实数部分 im为虚数部分 | complex(4,3) = 4+3j |
| c.conjugate() | 返回c的共轭复数 | c=4+3j; c.conjugate() = 4-3j |
| divmod(x, y) | 返回一个数值对(x//y, x%y) | divmod(8, 3) = (2, 2) |
| pow(x, y) | x的y次幂 | pow(2, 5) = 32 |
| x ** y | x的y次幂 | 2 ** 5 = 32 |
Note:
- 双斜杠 // 除法总是向下取整。
- 从符点数到整数的转换可能会舍入也可能截断,建议使用math.floor()和math.ceil()明确定义的转换。
- Python定义
pow(0, 0)和0 ** 0等于1。
二、比较运算符
| 运算符 | 描述 |
|---|---|
| < | 小于 |
| <= | 小于或等于 |
| > | 大于 |
| >= | 大于或等于 |
| == | 等于 |
| != | 不等于 |
| is | 判断两个标识符是不是引用自一个对象 |
| is not | 判断两个标识符是不是引用自不同对象 |
Note:
- 八个比较运算符优先级相同。
- Python允许
x < y <= z这样的链式比较,它相当于x < y and y <= z。 - 复数不能进行大小比较,只能比较是否相等。
三、逻辑运算符
| 运算符 | 描述 |
|---|---|
| x or y | if x is false, then y, else x |
| x and y | if x is false, then x, else y |
| not x | if x is false, then True, else False |
Note:
- or是个短路运算符,它只有在第一个运算数为False时才会计算第二个运算数的值。
- and也是个短路运算符,它只有在第一个运算数为True时才会计算第二个运算数的值。
- not的优先级比其他类型的运算符低,所以not a == b相当于not (a == b),而 a == not b是错误的。
四、位运算符
| 运算符 | 描述 |
|---|---|
| x | y | 按位或运算符 |
| x & y | 按位与运算符 |
| x ^ y | 按位异或运算符 |
| x << n | 左移动运算符 |
| x >> n | 右移动运算符 |
| ~x | 按位取反运算符 |
五、赋值运算符
复合赋值运算符与算术运算符是一一对应的:
| 运算符 | 描述 |
|---|---|
| = | 简单的赋值运算符 |
| += | 加法赋值运算符 |
| -= | 减法赋值运算符 |
| *= | 乘法赋值运算符 |
| /= | 除法赋值运算符 |
| %= | 取模赋值运算符 |
| **= | 幂赋值运算符 |
| //= | 取整除法运算符 |
六、成员运算符
Python提供了成员运算符,测试一个元素是否在一个序列(Sequence)中。
| 运算符 | 描述 |
|---|---|
| in | 如果在指定的序列中找到值返回True,否则返回False。 |
| not in | 如果在指定的序列中没有找到值返回True,否则返回False。 |
Python3基础(三) 运算符的更多相关文章
- C#基础(三)--运算符及条件控制语句
上一章我们了解了C#的一些数据基本类型.如何定义使用变量及类型之间的相互转换.可能大家会发现程序只能按照我们的要求从上向下这样顺序一条一条的执行. 那么程序能按照我们的要求,当某个条件成立的时候才执行 ...
- python3 基础三
一.if语句 if condition_1: statement_block_1 elif condition_2: statement_block_2 else: statement_block_3 ...
- JavaScript学习 - 基础(三) - 运算符
js运算符 1.算数运算符 包括 加(+) .减-() .乘(*).除(/).余数(%) 减号 还可以表示为 负号 例如: -1,-3 加号 还可以用于字符串拼接 例如: 'a' + 'b' = 'a ...
- Python3 - 基础(运算符)
Python3-运算符 举个简单的例子 4 +5 = 9 . 例子中,4 和 5 被称为操作数,"+" 称为运算符. 算术运算符 比较(关系)运算符 赋值运算符 逻辑运算符 位运算 ...
- Python3基础 三元运算符 简单示例
Python : 3.7.0 OS : Ubuntu 18.04.1 LTS IDE : PyCharm 2018.2.4 Conda ...
- Python3基础(十二) 学习总结·附PDF
Python是一门强大的解释型.面向对象的高级程序设计语言,它优雅.简单.可移植.易扩展,可用于桌面应用.系统编程.数据库编程.网络编程.web开发.图像处理.人工智能.数学应用.文本处理等等. 在学 ...
- C#_02.13_基础三_.NET类基础
C#_02.13_基础三_.NET类基础 一.类概述: 类是一个能存储数据和功能并执行代码的数据结构,包含数据成员和函数成员.(有什么和能够干什么) 运行中的程序是一组相互作用的对象的集合. 二.为类 ...
- Java基础-比较运算符Compare Operators
Java基础-比较运算符Compare Operators 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.关系运算符 关系运算符包括: 1>.大于(>) 2> ...
- Java基础-位运算符Bitwise Operators
Java基础-位运算符Bitwise Operators 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.位运算特点 位运算符分为按位与(&),按位或(|),按位异或(^ ...
- python002 Python3 基础语法
python002 Python3 基础语法 编码默认情况下,Python 3 源码文件以 UTF-8 编码,所有字符串都是 unicode 字符串. 当然你也可以为源码文件指定不同的编码: # -* ...
随机推荐
- 实例化Class类的5种方式
Java的数据类型可以分为两类,即引用类型和原始类型.对于每种类型的对象,Java虚拟机会实例化不可变的java.lang. Class对象.它提供了在运行时检查对象属性的方法,这些属性包括它的成员和 ...
- Python :用两个栈实现队列
转自:http://blog.csdn.net/Lynette_bb/article/details/75092745 牛客网上的剑指 offer的在线编程: 题目描述 用两个栈来实现一个队列,完成队 ...
- C++(存储类)经典!!
C++变量的存储类别(动态存储.静态存储.自动变量.寄存器变量.外部变量)动态存储方式与静态存储方式 我们已经了解了变量的作用域.作用域是从空间的角度来分析的,分为全局变量和局部变量. 变量还有另一种 ...
- js让页面逐渐变透明,直到消失
在gitHub闲逛的时候,无意间发现了些好玩的代码,一个歪果仁写的,这里我做了些修改和优化,gitHub链接已经忘了,是一段恶搞的js代码,假如你的顾客或者老板拖欠你工资,那你就可以让项目页面在浏览器 ...
- JavaScipt30(第七个案例)(主要知识点:数组some,every,findIndex方法)
承接上文,这是第7个案例,这个案例没什么说的,主要有三个注意点: 附上项目链接: https://github.com/wesbos/JavaScript30 // 1. slice(begin, e ...
- Object.prototype 原型和原型链
Object.prototype 原型和原型链 原型 Javascript中所有的对象都是Object的实例,并继承Object.prototype的属性和方法,有些属性是隐藏的.换句话说,在对象创建 ...
- [gulp]Cannot find module 'orchestrator'
从github 将项目 clone到本地后,运行gulp 启动项目时,出现这个问题的原因是: 1.clone 项目连同 nodemodules目录也一起下载到本地. 解决方式: 1.从本地删除node ...
- js的title提示
$(function() { //先在页面创建一个层 var jqtip = $("<div id='jqtip20130719'" + "style='paddi ...
- Python运算符(Python学习笔记03)
- BZOJ 4976 [Lydsy1708月赛]宝石镶嵌
[题解] 我们设总共有m个二进制位出现过1,那么如果n-k≥m,显然所有的1都可以出现,那么答案就是把所有的数或起来. 如果n-k<m,那么因为k不超过100,ai不超过1e5,所以n不超过11 ...