从0开始的Python学习005运算符与表达式
地三鲜
土豆+茄子+青椒=地三鲜
这就是一个表达式,表达式是由运算符和操作数组成的。
土豆、茄子和青椒是操作数,炒是运算符,而地三鲜就是最后结果也就是这个表达式的值。
表达式
一个表达式可以分解为运算符和操作数。
运算符
小测试:你可以直接在命令行中输入表达式。

运算符和他们的用法
运算符包含算术运算符、逻辑运算符和位运算符
| 运算符 | 名称 | 说明 | 例子 |
| + | 加 | 两个对象相加 | 1+2=3 'a'+'b'='ab' |
| - | 减 | 得到复数或一个数减去另一个数 | -5.2 3-1=2 |
| * | 乘 | 两个数相乘或返回一个被重复的字符串 | 2*2=4 'a'*3='aaa' |
| ** | 幂 | 返回x的y次幂 | 3**4=81(3*3*3*3) |
| / | 除 | x除以y | 4/2=2.0 4/3=1.333333333 |
| // | 取整数 | 得到商的整数 | 4//3.0=1.0 |
| % | 取模 | 返回除法的余数 | 8%3=2 -25.5%2.25=-11.333333333333334 |
| << | 左移 | 二进制左移x位 | 2<<2=8 |
| >> | 右移 | 二进制右移x位 | 11>>1=5 |
| & | 按位与 | 数的按位与 | 5 & 3= 1 |
| | | 按位或 | 数的按位或 | 5 | 3=7 |
| ^ | 按位异或 |
数的按位异或 |
5^3=6 |
| ~ | 按位翻转 | x的按位反转是-(x+1) | ~5=-6 |
| < | 小于 | 返回x是否小于y (False)(True) | 5<3=False |
| > | 大于 | 返回x是否大于y | 5>3=True |
| <= | 小于等于 | 返回x是否小于等于y | x = 3; y = 6; x <= y=True。 |
| >= | 大于等于 | 返回x是否大于等于y | x = 4; y = 3; x >= y返回True。 |
| == | 等于 | 比较对象是否相等 | x = 2; y = 2; x == y返回True。x = 'str'; y = 'stR'; x == y返回False。x = 'str'; y = 'str'; x == y返回True。 |
| != | 不等于 | 比较两个对象是否不相等 | x = 2; y = 3; x != y返回True。 |
| not | 布尔“非” | 如果x为True,返回False。如果x为False,它返回True。 | x = True; not y返回False。 |
| and | 布尔“与” | 如果x为False,x and y返回False,否则它返回y的计算值。 | x = False; y = True; x and y,由于x是False,返回False。在这里,Python不会计算y,因为它知道这个表达式的值肯定是False(因为x是False)。这个现象称为短路计算。 |
| or | 布尔“或” | 如果x是True,它返回True,否则它返回y的计算值。 | x = True; y = False; x or y返回True。短路计算在这里也适用。 |
使用代码进行练习
>>> 1+2
3
>>> 'a'+'b'
'ab'
>>> -5.2
-5.2
>>> 3-1
2
>>> 2*2
4
>>> 'a'*3
'aaa'
>>> 3**4
81
>>> 4/2
2.0
>>> 4/3
1.3333333333333333
>>> 4//3
1
>>> 4//3.0
1.0
>>> 8%3
2
>>> -25.5/2.25
-11.333333333333334
>>> 2<<2
8
>>> 11>>1
5
>>> 5&3
1
>>> 5|3
7
>>> 5^3
6
>>> ~5
-6
>>> 5<3
False
>>> 5>3
True
>>> 3<=6
True
>>> 4>=3
True
>>> 2==2
True
>>> 'str'=='stR'
False
>>> 'str'=='str'
True
>>> 2!=3
True
>>> x=True; not x
False
>>> x = False; y = True; x and y
False
>>> x = True; y = False; x or y
True
这其中涉及到二进制的运算,有兴趣的大佬可以去看看,不是很难,很好理解。
从0开始的Python学习005运算符与表达式的更多相关文章
- python学习第六天运算符总结大全
python学习第六天运算符总结大全,玖乐网络(www.96net.com.cn)列出下面详细 1,算术运算符 + 加 - 减 *乘 / 除 % 求模 ** 乘方 // 取整除 - 返回商的整数部分 ...
- Dart学习笔记-运算符-条件表达式-类型转换
Dart学习笔记-运算符-条件表达式-类型转换 一.运算符 1.算术运算符 + (加)- (减)* (乘)/ (除)~/ (取整) %(取余) 2.关系运算符 == (等等) != (不等) > ...
- 从0开始的Python学习017Python标准库
简介 Python标准库使随着Python附带安装的,它包含很多有用的模块.所以对一个Python开发者来说,熟悉Python标准库是十分重要的.通过这些库中的模块,可以解决你的大部分问题. sys模 ...
- 吾八哥学Python(六):运算符与表达式
上篇简单学习了数学运算符,今天来学习下完整的Python运算符与表达式,具体看下面的表格吧! 表1 运算符与它们的用法 运算符 名称 说明 例子 + 加 两个对象相加 3 + 5得到8.’a’ + ‘ ...
- python中的运算符及表达式及常用内置函数
知识内容: 1.运算符与表达式 2.for\while初步了解 3.常用内置函数 一.运算符与表达式 python与其他语言一样支持大多数算数运算符.关系运算符.逻辑运算符以及位运算符,并且有和大多数 ...
- Python中的运算符与表达式
你所编写的大多数语句(逻辑行)都包含了表达式(Expressions).一个表达式的简单例子便是 2+3.表达式可以拆分成运算符(Operators)与操作数(Operands).运算符(Operat ...
- 从0开始的Python学习018更多的Python内容
特殊的方法 之前学习的都是一些常用的方法,为了使我们的学习更加的完整,我们在这里学习一些特殊的方法. 一般说来,特殊的方法都被用来模仿某个行为.例如,如果你想要为你的类使用x[key]这样的索引操作( ...
- [python学习笔记] 运算符
数学运算符 与大多语言相同的运算符就不介绍了.不同的地方会用 (!不同)标出 与java相同的运算符 , - , * , % , / 不同之处 除法 (!不同) / 与java不同,整数相除,结果为 ...
- 从0开始的Python学习019更多的Python内容2
书接上文,接演Python全传 话说学了这么多Python的基础知识,也该写一点让别人看不懂的代码了. lambda lambda表达式,是一个方法的简化形似,它没有自己的代码块,它后面的语句就是它的 ...
随机推荐
- [Swift]LeetCode992. K 个不同整数的子数组 | Subarrays with K Different Integers
Given an array A of positive integers, call a (contiguous, not necessarily distinct) subarray of A g ...
- PHP 编码规范
这是给小组制定的php编码规范 该 PHP 编码规范基本上是同 PSR 规范的.有一部分的编码规范 PSR 中是建议,此编码规范会强制要求. 此编码规范 是以 PSR-1 / PSR-2 / PSR- ...
- HTTP 权威指南 详解 ( 一、概述 )
HTTP 权威指南 详解 ( 一.概述 ) 最近在解读 <http权威指南> 这本书.之前对于http 的理解仅限于 知道我需要向服务端发送一个 get or post 请求,然后等待服务 ...
- 行为驱动:Cucumber + Selenium + Java(四) - 实现测试用例的参数化
在上一篇中,我们介绍了Selenium + Cucumber + Java框架下的使用Tags对测试用例分组的实现方法,这一篇我们用数据表格来实现测试用例参数化. 4.1 什么是用例参数化 实际测试中 ...
- 使用Flume消费Kafka数据到HDFS
1.概述 对于数据的转发,Kafka是一个不错的选择.Kafka能够装载数据到消息队列,然后等待其他业务场景去消费这些数据,Kafka的应用接口API非常的丰富,支持各种存储介质,例如HDFS.HBa ...
- 【ASP.NET Core快速入门】(十一)应用Jwtbearer Authentication、生成jwt token
准备工作 用VSCode新建webapi项目JwtAuthSample,并打开所在文件夹项目 dotnet new webapi --name JwtAuthSample 编辑JwtAuthSampl ...
- Linux 终端下解压文件失败问题
Linux 终端下解压文件失败: # tar -zxvf *****.tar.bz2 tar 命令出错gzip: stdin: not in gzip format tar: Child return ...
- Java开发知识之JAVA的反射
目录 Java中的反射机制 一丶什么是反射机制 二丶Class类,自描述类.获取类名的三种方法 1.使用静态属性Class获取 2.使用Class方法 forName()获取自描述Class 3.使用 ...
- Docker Compose 原理
Docker 的优势非常明显,尤其是对于开发者来说,它提供了一种全新的软件发布机制.也就是说使用 docker 镜像作为软件产品的载体,使用 docker 容器提供独立的软件运行上下文环境,使用 do ...
- 痞子衡嵌入式:串口调试工具Jays-PyCOM诞生记(5)- 软件优化
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是串口调试工具Jays-PyCOM诞生之软件优化. 前面痞子衡已经初步实现了Jays-PyCOM的串口功能,并且通过了最基本的测试,但目前 ...