复合运算符

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. considerate|considerable|content|Contact|Consult|deceived|

    ADJ-GRADED 替人着想的;体贴的Someone who is considerate pays attention to the needs, wishes, or feelings of o ...

  2. python自动化测试之函数(匿名函数lambda和三目运算等(高级用法))

    ''' 匿名函数: lambda ''' def Add(a,b): print(a+b) Add(2,3) per = lambda a,b:a+b print(per(2,3)) ''' 三目运算 ...

  3. 领域驱动(DDD)之我见,基于Golang实现

    分享一点不成熟的理解,还请本着交流进步的大原则喷之.从去年开始接触和套用DDD以来,已经有1年多时间了.也先后在2个生产项目中主导应用. 一.一些概念 DDD经典分层: 分层架构的一个重要原则是:每层 ...

  4. 20180110labview串口传输实时显示相关内容

    下一步:1.在原有文件不变的基础上,输出实时波形文件,完整的4pmt4ld,并将对应的源探布配通道编号显示在面板上,对应的通道数据索引输出.2.在一次测量OK的那个文件里用while指定字节读取,注意 ...

  5. selenium ide几个版本和对应的firefox版本

    最近安装selenium ide折腾了好久,可能是目前还不太熟悉自动化脚本录制的一些知识. 通过最新版firefox59安装的selenium ide 3.0.2录制的脚本不能导出.于是下载了低版本的 ...

  6. python django 模板语言循环字典

    urls.py from django.conf.urls import url from django.contrib import admin from cmdb import views url ...

  7. Json格式化的实现(Jackson、Gson)

    一.第一种(Jackson) 需要用到的jar包: https://pan.baidu.com/s/1wrkUwEoKpmqgmYPQSN-iZg package util; import com.f ...

  8. OutputStream之flush() · 李大白写点儿啥

    最近在做一个网络下载功能,I/O操作时,操作完OutputStream时写了flush(),目的是刷新输出流,将缓存写入物理设备.突然就想,这里是否需要flush()呢? 我当时的代码: 1 2 3 ...

  9. 你每天跑这么多自动化用例,能发现BUG吗?

    阿里QA导读:为什么要度量测试有效性?这么多的CASE,花了大量时间和资源去运行,真能发现bug吗?CI做到90%的行覆盖率了,能发现问题吗?测试用例越来越多,删一些,会不会就发现不了问题了?怎么找出 ...

  10. Random Forest And Extra Trees

    随机森林 我们对使用决策树随机取样的集成学习有个形象的名字–随机森林. scikit-learn 中封装的随机森林,在决策树的节点划分上,在随机的特征子集上寻找最优划分特征. import numpy ...