复合运算符

a *= b  # a = a * b
a += b # a = a + b
a -= b # a = a - b
...

位运算符

对数字进行二进制运算

按位与

&,二进制位都为一,则返回值对应二进制位也为一

print( 5 & 7 )

\(5\)的二进制形式为\(101\),\(7\)的二进制格式为\(111\)

按位与之后返回\(101\)

可以用来取出某个数中的指定位

比如说我想知道\(114514\)的二进制数中的第2位,第4位与第5位组成的数字,我就可以让它按位与\(11001_{(2)}\)

按位或

\(|\),对应二进制位只要有一个是\(1\),返回即为\(1\)

print( 5 | 7 )

返回\(7\)

按位异或

^,对应二进制位不相同时,返回\(1\),相同返回\(0\)

print( 5 ^ 7 )

返回值是\(2\),也就是\(10_{(2)}\)

几个小性质:

  1. 可以理解成是不进位的二进制加法
  2. 同时满足交换律与结合律
  3. \(x\) ^ \(0 = x, x\) ^ \(x = 0\)
  4. 由\(2,3\)可以推出,\(x\) ^ \(y\) ^ \(y = x\) ^ \(0 = x\)

按位取反

~,每个二进制位\(1\)变\(0\),\(0\)变\(1\)

注:如果想要实现某几位取反,只需要异或所需位是\(1\),其余位是\(0\)的数

比如想得到\(123\)在二进制第\(2,4,6\)位取反的值,只需要异或\(101010\)

\(if\)表达式

如果是真(\(True\)),则执行\(if\)下的语句,如果是假(\(False\)),则跳过

\(Python\)的缩进很严格,缩进格式不正确的话是会报错的

伪代码格式:

if 表达式 :
语句

如果写成下面是错误的,因为缩进格式不对

if 表达式 :
语句

表达式里的内容是一句判断,比如

a == b, a > b ...

如果为真就执行if下的语句

另外还有几种情况代表假:

1.\(if\)表达式的返回值是\(0\),或者是\(0.0\)

2.返回值是一个空字符串""或''

3.返回值是\(None\)

4.返回值是一个布尔值\(False\)

其余值都为真

\(if-else\)语句

同样,\(Python\)也支持\(if-else\),只不过有很严格的缩进

if 表达式 :
语句1
else :
语句2

如果表达式为真,则执行语句1,如果为假,则执行语句2

【Python】2.16学习笔记 运算符,位运算符,if-else语句的更多相关文章

  1. java学习笔记之位运算符

    java的位运算符主要针对二进制数的位进行逻辑运算,主要包括以下几种的位运算符 1.与运算符(&) 与运算符的使用规律是两个操作数中位为1的时候结果为1,否则都是0,例如  3&5=1 ...

  2. Java学习笔记——关于位运算符的问题

    我就之直接贴图了!不想排版了! 有什么问题,欢迎大家指出,帮助我提高,谢谢!

  3. Go语言学习笔记四: 运算符

    Go语言学习笔记四: 运算符 这章知识好无聊呀,本来想跨过去,但没准有初学者要学,还是写写吧. 运算符种类 与你预期的一样,Go的特点就是啥都有,爱用哪个用哪个,所以市面上的运算符基本都有. 算术运算 ...

  4. swift学习笔记之-高级运算符

    //高级运算符 import UIKit /*高级运算符(Advanced Operators):位运算符.溢出运算符.优先级和结合性.运算符函数.自定义运算符 位运算符: 1.位运算符可以操作数据结 ...

  5. C#.NET学习笔记7--11---算术运算符,变量赋值,变量的交换,布尔表达式1,布尔表达式2

    C#.NET学习笔记7---算术运算符 2013/9/6 技术qq交流群:JavaDream:251572072  教程下载,在线交流:创梦IT社区:www.credream.com 1.Consol ...

  6. JavaScript:学习笔记(6)——New运算符

    JavaScript:学习笔记(6)——New运算符 new 运算符创建一个用户定义的对象类型的实例或具有构造函数的内置对象的实例. 快速开始 当你使用new关键字的时候,会 创建一个新的对象 将th ...

  7. Python Built-in Function 学习笔记

    Python Built-in Function 学习笔记 1. 匿名函数 1.1 什么是匿名函数 python允许使用lambda来创建一个匿名函数,匿名是因为他不需要以标准的方式来声明,比如def ...

  8. python网络爬虫学习笔记

    python网络爬虫学习笔记 By 钟桓 9月 4 2014 更新日期:9月 4 2014 文章文件夹 1. 介绍: 2. 从简单语句中開始: 3. 传送数据给server 4. HTTP头-描写叙述 ...

  9. TCP/IP详解学习笔记 这位仁兄写得太好了.(转载)

    TCP/IP详解学习笔记   这位仁兄写得太好了   TCP/IP详解学习笔记   这位仁兄写得太好了. http://blog.csdn.net/goodboy1881/category/20444 ...

  10. PHP中的运算符---位运算符、递增递减运算符、三元运算符、字符串运算符、数组运算符、类型运算符、错误控制运算符

    1.位运算符 位运算符用来对整型数的指定位进行置位,如果被操作数是字符串,则对该字符串的ASCII码值进行操作. 运算类型 运算符 举例 结果 按位与 & $a & $b 将$a 与 ...

随机推荐

  1. Qt static关键字全局变量

    创建全局变量.h文件 globalvariable.h #ifndef GLOBALVARIABLE_H #define GLOBALVARIABLE_H #include <QImage> ...

  2. <JZOJ5913>林下风气

    快乐dp 反正考场写挂 #include<cstdio> #include<cstring> #include<cctype> #include<iostre ...

  3. 自定义一个简单的SegmentedControl

    先大概看下我们想实现简单的效果 源码 // // DSegmentedControl.swift // IOS学习之自定义UISegmentedControl // // Created by din ...

  4. JAVA WEB期末项目第二阶段成果

    我们做的系统是一个基于Java web与MySQL的食堂订餐系统 班级: 计科二班 小组成员:李鉴宣.袁超 1.开发环境 开发编辑器使用:Visual Studio Code 数据库使用:MySQL8 ...

  5. 两步解决maven plugins 插件下载慢 !下载报红的问题!

    两步解决maven plugins 插件下载慢 !下载报红的问题! 1.找到你解压的maven安装路径下的conf   编辑settings 2.添加如下   使用阿里的 <mirror> ...

  6. http2.0与WebSocket的关系是怎么样的

    按照OSI网络分层模型,IP是网络层协议,TCP是传输层协议,而HTTP是应用层的协议.在这三者之间,SPDY和WebSocket都是与HTTP相关的协议,而TCP是HTTP底层的协议.WebSock ...

  7. kibana增加验证

    Kibana从5.5开始不提供认证功能,想用官方的认证X-Pack收费 ... 自己动手吧,用nginx的代理加apache生成的密码认证文件.环境:ubuntu16.04 安装nginxapt-ge ...

  8. angularJS进阶阶段(4)

    angularJS进阶阶段(4) 编译器/$compile 编译器$compile是一个AngularJS的内置服务,它负责遍历DOM树来查找匹配指令, 并调用指令的实现代码进行处理. HTML编译包 ...

  9. 能源科技,苹果和Google的新圣战?

    细心的果粉可能会注意到,最新版本的IOS软体中,增加了一个不起眼的按钮,它是一款署名为"家庭"的App,之所以说它不起眼,是因为它好像真得没什么用,活跃率恐怕不及Wechat的万分 ...

  10. Python3——2019年全国大学生计算二级考试

    Python语言程序设计二级重点(2019年版) 第一章 程序设计基本方法 IPO程序编写方法 :输入(input),输出(output),处理(process): Python程序的特点: (1)语 ...