一、真假与运算符

1.1 真假的划分、查看

  任何数据都可以分为两类:True 与 False

      False : 0,None,空的数据结构例如:[] ,{},str1 = ''

      True  :除了上面情况都是真的。

  我们可以用  bool 来查看是否为真。

>>> str1 = ''
>>> bool(str1)
False
>>> str1 = ' '
>>> bool(str1)
True >>> li = []
>>> bool(li)
False

1.2 比较运算

  a = True

  b = False

1.3 逻辑运算符

  and: 判断and前后是不是真,

        真的话,返回最后一个真。

        假的话,返回第一个假。 如果第一个就遇到假了,后面就不计算了。

    or   :判断or前后有没有真的值

        遇到第一个真,就直接返回,后面就不去计算了

        否则一直计算到最后。

  not  :等同与!=

        如果真,则变为假

        如果假,则变为真

================================

小列子: and 与 or的优先级。

 and 优先 or

x = 1
y = 0
z = 0
x or y and z #真
(x or y) and z #假

1.4  身份运算符  is 与 ==的区别

  is   比较的变量的id,也就是是否指向同一内存。  (id是内存引用的指针)

  == 比较的是变量的值

这里有个地方要说明下,python 对数字的存储,在数值比较小的时候,引用的内存是一致的,id相同,

                     在数值变大的时候,内存就又不一致了。id不同

二、 if 语句 

2.1 基本格式:

  可支持多个elif,注意if是从上而下执行,当有上面满足的时候,下面的if 组合就不会去执行了。

  if    条件:pass

  elif  条件:pass

  elif  条件:pass

  else:pass

2.2 扩展组合

与 in组合

a = 5
li_num = [1, 2, 3, 4, 5, 6]
if a in li_num:
print('has a')
else:
print('not a')

与 in and 组合

a = 5
b = 1
li_num = [1, 2, 3, 4, 5, 6]
if a in li_num and b in li_num:
print('都在')
else:
print('可能在一个,可能一个都没有')

与any组合

li_num = [1,2,3,4,5]
if any(x > 3 for x in li_num): # any后面是一个可迭代的对象,这个对象中有一个为真,则为真。
print('ok')
else:
print('no')
结果:ok

与all组合

li_num = [1,2,3,4,5]
if all(x > 3 for x in li_num): # all后面是一个可迭代的对象,这个对象中全为真,则为真。 有一个假,就是假
print('ok')
else:
print('no')
结果:no

  

  

控制语句1:真假与if 语句的更多相关文章

  1. [斯坦福大学2014机器学习教程笔记]第五章-控制语句:for,while,if语句

    在本节中,我们将学习如何为Octave程序写控制语句. 首先,我们先学习如何使用for循环.我们将v设为一个10行1列的零向量. 接着,我们写一个for循环,让i等于1到10.写出来就是for i = ...

  2. JS流程控制语句 多种选择(Switch语句) 当有很多种选项的时候,switch比if else使用更方便。

    多种选择(Switch语句) 当有很多种选项的时候,switch比if else使用更方便. 语法: switch(表达式) { case值1: 执行代码块 1 break; case值2: 执行代码 ...

  3. JS流程控制语句 做判断(if语句)if语句是基于条件成立才执行相应代码时使用的语句。语法:if(条件) { 条件成立时执行代码}

    做判断(if语句) if语句是基于条件成立才执行相应代码时使用的语句. 语法: if(条件) { 条件成立时执行代码} 注意:if小写,大写字母(IF)会出错! 假设你应聘web前端技术开发岗位,如果 ...

  4. Java控制语句例题,for循环语句,if条件语句等,Scanner类与Random类,Math.max()方法

    例题:编写程序,生成5个1至10之间的随机整数,并打印结果到控制台 import java.util.Random;class demo09 { public static void main(Str ...

  5. python3控制语句---选择结构语句

    python中的控制语句主要有if.if--else.if--slif--else.pass语句.其实python的控制语句与其他语言的控制语句工作原理基本一样.控制语句可以分为选择结构语句和循环结构 ...

  6. oracle(sql)基础篇系列(一)——基础select语句、常用sql函数、组函数、分组函数

        花点时间整理下sql基础,温故而知新.文章的demo来自oracle自带的dept,emp,salgrade三张表.解锁scott用户,使用scott用户登录就可以看到自带的表. #使用ora ...

  7. 20151013 C# 第一篇 流程控制语句

    20151013 流程控制语句: 1.选择语句 if … else if...else 选择语句 if(布尔表达式){  语句块:} if(布尔表达式){  语句块1:}else{  语句块2:} i ...

  8. linux shell 流程控制(条件if,循环【for,while】,选择【case】语句实例 --转载

    http://www.cnblogs.com/chengmo/archive/2010/10/14/1851434.html nux shell有一套自己的流程控制语句,其中包括条件语句(if),循环 ...

  9. (旧)子数涵数·C语言——条件语句

    首先,我们讲一下理论知识,在编程中有三种结构,分别是顺序结构.条件结构.循环结构,如果用流程图来表示的话就是: 那么在C语言中,如何灵活运用这三种结构呢?这就需要用到控制语句了. 而条件语句便是控制语 ...

随机推荐

  1. Django限制请求method

    1.常用的请求method 1.1 GET请求: GET请求一般用来向服务器索取数据,但不会向服务器提交数据,不会对服务器的状态进行更改.比如向服务器获取某篇文章的详情. 1.2 POST请求: PO ...

  2. 信息安全意识教育日历——By 安全牛

    安全牛:企业即使投入再好的信息安全技术和产品,也难以解决内部威胁以及社会工程等攻击手段,无法做到全面有效地保护企业信息资产.而通过开展员工的信息安全意识培训教育工作,不仅能降低企业风险.满足合规要求, ...

  3. POJ1276:Cash Machine(多重背包)

    题目:http://poj.org/problem?id=1276 多重背包模板题,没什么好说的,但是必须利用二进制的思想来求,否则会超时,二进制的思想在之前的博客了有介绍,在这里就不多说了. #in ...

  4. vue自定义全局和局部指令

    一.介绍 1.除了核心功能默认内置的指令 (v-model 和 v-show),Vue 也允许注册自定义指令. 2.自定义指令的分类       1.全局指令 2.局部指令 3.自定义全局指令格式 V ...

  5. go——切片

    切片(slice)可以看作一种对数组的包装形式,它包装的数组为该切片的底层数组.反过来讲,切片是针对其底层数组中某个连续片段的描述,下面的代码声明了一个切片类型的变量: var ips = []str ...

  6. day2 笔记

    while 条件:           # 循环体       # 如果条件为真,那么循环体则执行     # 如果条件为假,那么循环体不执行         循环中止语句 如果在循环的过程中,因为某 ...

  7. Python:virtualenv介绍

    virtualenv 在开发Python应用程序的时候,系统安装的Python3只有一个版本:3.4.所有第三方的包都会被pip安装到Python3的site-packages目录下. 如果我们要同时 ...

  8. SOAPUI 压力测试的指标项说明

      soapUI Pro指标项说明:   Test Step Sets the startup delay for each thread (in milliseconds), setting to ...

  9. ZooKeeper的使用:安装、常用的命令

    公司项目需要使用dubbo,因此,自己做个小Demo就很有必要了,也有助于自己理解和使用,前期准备工作当然就必不可少了,因为dubbo是发布到zookeeper的服务,故先把zookeeper的环境先 ...

  10. HDU - 6386 Age of Moyu 2018 Multi-University Training Contest 7 (Dijkstra变型)

    题意:N个点M条边的无向图,每条边都有属于自己的编号,如果一条路径上的边编号都相同,那么花费仅为1:改变至不同编号的路径,花费加1,无论这个编号之前是否走过. 分析:记录每个点的最小花费,再用set维 ...