一、什么是表达式?

  1+2*3就是一个表达式,这里的加号和乘号叫做运算符,1、2、3叫做操作数。1+2*3计算的结果是7,计算结果可以存到一个变量中,即:res = 1 + 2 * 3。

  所谓的表达式就是:由操作数和运算符组成的一句代码或语句,表达式可以求值,可以放在“=”号右边,用来给变量赋值。

二、算术运算符

  所谓的算术运算符是指: + - * / //(取整数) %(取余) **(指数运算)等。

 >>> num = 2
>>> num += 1 # 等价于 num = num + 1
>>> num -= 1 # 等价于 num = num - 1
>>> num *= 1 # 等价于 num = num * 1
>>> num /= 1 # 等价于 num = num / 1
>>> num //= 1 # 等价于 num = num // 1
>>> num %= 1 # 等价于 num = num % 1
>>> num **= 2 # 等价于 num = num ** 2

   着重要注意的是/和//的区别,前者是我们理解中的“正常除”,而后者则是取整除,如下:

 >>> 4/3
1.3333333333333333
>>> 4//3
1

三、比较运算符

所谓的比较运算符是指用于数值比较的运算符,运算的结果有两种:True和False(真和假)。

比较运算符有以下几种:> < >= <= == !=

 >>> a = 5
>>> b = 3
>>> a > b # 检查左操作数的值是否大于右操作数的值,如果是,则条件成立。
True
>>> a < b # 检查左操作数的值是否小于右操作数的值,如果是,则条件成立。
False
>>> a <= b # 检查左操作数的值是否小于或等于右操作数的值,如果是,则条件成立。
False
>>> a >= b # 检查左操作数的值是否大于或等于右操作数的值,如果是,则条件成立。
True
>>> a == b # 检查,两个操作数的值是否相等,如果是则条件变为真。
False
>>> a != b # 检查两个操作数的值是否相等,如果值不相等,则条件变为真。
True

四、逻辑运算符

  not and or

  逻辑运算符是用来做逻辑运算的,逻辑运算符的操作数就是用来做条件判断的表达式或变量。

 not and or
逻辑运算符是用来做逻辑计算的,逻辑运算符的操作数就是用来一个用来做条件判断的表达式或者变量。
```
>>> a > b and a < b # 如果两个操作数都是True,那么结果为True,否则结果为False。
False
>>> a > b or a < b # 如果有两个操作数至少有一个为True, 那么条件变为True,否则为False。
True
>>> not a > b # 反转操作的状态,操作数为True,则结果为False,反之则为True
False

  注意,逻辑运算符中有一个很重要的原则:短路原则。

五、身份运算符

  is、is not

  身份运算符是用来判断身份的,一般用来判断变量的数据类型

 >>> a = 123456
>>> b = a
>>> b is a #判断 a 和 b 是不是同一个 123456
True
>>> c = 123456
>>> c is a #判断 c 和 a 是不是同一个 123456
False
>>> c is not a #判断 c 和 a 是不是不是同一个 123456
True

六、位运算符

  我们平时用到的数字在计算机中是以二进制表示的,这个二进制数叫做机器数。机器数是带符号的,在计算机用一个数的最高位存放符号,正数为0,负数为1。

  • & 按位与
  • | 按位或
  • ^按位异或
  • ~按位取反
  • << 左移动运算符:运算数的各二进位全部左移若干位,由<<右边的数指定移动的位数,高位丢弃,低位补0
  • >> 右移动运算符:规则同左移动 运算符

  位运算符一般用于二进制操作,一般用于底层,Python很少用。

Python3【基础】-表达式与运算符的更多相关文章

  1. Python3基础-表达式和运算符

    表达式和运算符 什么是表达式? 1+2*3就是一个表达式,这里的加号和乘号叫做运算符,1.2.3叫做操作数. 1+2*3经过计算后得到的结果是7,我们可以将计算结果存放在一个变量里,result=1+ ...

  2. c语言基础表达式, 关系运算符, 逻辑运算符, 位运算符, 数据的取值范围, 分支结构(if...else, switch...case)

    1.表达式: 表达式的判断是有无结果(值), 最简单的表达式是一个常量或变量, 如:12, a, 3 + 1, a + b, a + 5 都是表达式 2.BOOL(布尔)数据类型: c语言中除了基本数 ...

  3. Python3基础知识之运算符

    题:今天学习python运算符,学完了回头看看与.net和java有什么异同. 目标:学习了解运算符,学会一般的应用. 相关知识: Python语言支持以下类型的运算符: 算术运算符 比较(关系)运算 ...

  4. 003-Python3-基础语法-运行方式、代码基础要求、运算符[算数运算符、比较运算符、赋值运算符、位运算符、逻辑运算符、成员运算符、身份运算符]、运算符优先级

    一.基础语法 参看地址:https://www.runoob.com/python3/python3-tutorial.html 1.1.运行方式 1.文件方式 编写一个hello.py文件, pri ...

  5. [java学习笔记]java语言基础概述之运算符&程序流程控制&for循环嵌套

    一.运算符 算数运算符 +,-,*,/,%,++,-- 1.+,-,*,/ 整数除以整数的结果为舍弃了小数部分的整数. 2.%:取余 %左右都为正数,左边小于右边结果为左边值,如,4%5=4 %左边大 ...

  6. Python3基础(十二) 学习总结·附PDF

    Python是一门强大的解释型.面向对象的高级程序设计语言,它优雅.简单.可移植.易扩展,可用于桌面应用.系统编程.数据库编程.网络编程.web开发.图像处理.人工智能.数学应用.文本处理等等. 在学 ...

  7. 【python3基础】python3 神坑笔记

    目录 os 篇 os.listdir(path) 运算符篇 is vs. == 实例 1:判断两个整数相等 实例 2:argparse 传参 实例 3:np.where 命令行参数篇 Referenc ...

  8. Java基础语法(3)-运算符

    title: Java基础语法(3)-运算符 blog: CSDN data: Java学习路线及视频 1.算术运算符 算术运算符的注意问题 如果对负数取模,可以把模数负号忽略不记,如:5%-2=1. ...

  9. Python 简明教程 --- 5,Python 表达式与运算符

    微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 靠代码行数来衡量开发进度,就像是凭重量来衡量飞机制造的进度. -- Bill Gates 目录 1, ...

  10. Python3基础-目录

    Python3基础-目录(Tips:长期更新Python3目录) 第一章 初识Python3  1.1 Python3基础-前言  1.2 Python3基础-规范 第二章 Python3内置函数&a ...

随机推荐

  1. oo第二次总结作业

    OO电梯作业总结 这三周的作业和课堂内容以及OS的课上内容都相同,都是关于多线程方面的知识.在这次作业中由浅入深布置了三项多线程电梯方面的作业,让我们在实践中感受了多线程的工作原理以及各项需要注意的要 ...

  2. 转:介绍几个著名的实用的Java反编译工具,提供下载

    from :http://www.glorze.com/219.html 反编译 众所周知,我们将源代码进行编译,生成可执行的程序或者容器发布包,这个将代码转换的过程就是编译的过程,而反编译就是将这些 ...

  3. source .bashrc 报错:virtualenvwrapper.sh: There was a problem running the initialization hooks.

    在Ubuntu下安装完virtualenv.virtualenvwrapper,然后设置环境文件 .bashrc 接着 source .bashrc,产生错误信息 首先确认了 libpam-mount ...

  4. ABAP术语-V2 Module

    V2 Module 原文:http://www.cnblogs.com/qiangsheng/archive/2008/03/21/1115720.html Analogously to V1 the ...

  5. Android环境搭建及Ionic打包(win7)

    本人刚刚接触Ionic3,初步进行打包操作,将其遇到的问题和整个流程记录下载,方便以后的巩固,也为小白们提供一个参考.因本人没有appleヽ(ー_ー)ノ,而且使用的是WIN7系统,所以暂时只提供了WI ...

  6. laravel5.5源码笔记(四、路由)

    今天这篇博文来探索一下laravel的路由.在第一篇讲laravel入口文件的博文里,我们就提到过laravel的路由是在application对象的初始化阶段,通过provider来加载的.这个路由 ...

  7. CRLF注入学习

    预备 <CRLF>是换行符,CRLF注入顾名思义就是把换行符写入,那么要把换行符写入到哪里呢?看看下面的http头 可以看到,每一行都包含特定的头部信息,然后以换行为标志写入其他的头部信息 ...

  8. 生成并调用so动态库

    本文更新于2019-01-03. 生成库 头文件fn.h如下: #ifndef __FN_H__ #define __FN_H__ #ifdef __cplusplus extern "C& ...

  9. 收藏Linux命令

    http://www.cnblogs.com/laov/p/3541414.html#zhiling 1.压缩文件夹 http://www.cnblogs.com/eoiioe/archive/200 ...

  10. 20155216 2016-2017-2 《Java程序设计》第二周学习总结

    教材学习内容总结 类型 short占2字节 int占4字节 long占8字节 byte占1字节,可表示-128~127的整数 char占2字节 boolean不考虑占字节 float占4字节 doub ...