控制语句1:真假与if 语句
一、真假与运算符
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 语句的更多相关文章
- [斯坦福大学2014机器学习教程笔记]第五章-控制语句:for,while,if语句
在本节中,我们将学习如何为Octave程序写控制语句. 首先,我们先学习如何使用for循环.我们将v设为一个10行1列的零向量. 接着,我们写一个for循环,让i等于1到10.写出来就是for i = ...
- JS流程控制语句 多种选择(Switch语句) 当有很多种选项的时候,switch比if else使用更方便。
多种选择(Switch语句) 当有很多种选项的时候,switch比if else使用更方便. 语法: switch(表达式) { case值1: 执行代码块 1 break; case值2: 执行代码 ...
- JS流程控制语句 做判断(if语句)if语句是基于条件成立才执行相应代码时使用的语句。语法:if(条件) { 条件成立时执行代码}
做判断(if语句) if语句是基于条件成立才执行相应代码时使用的语句. 语法: if(条件) { 条件成立时执行代码} 注意:if小写,大写字母(IF)会出错! 假设你应聘web前端技术开发岗位,如果 ...
- Java控制语句例题,for循环语句,if条件语句等,Scanner类与Random类,Math.max()方法
例题:编写程序,生成5个1至10之间的随机整数,并打印结果到控制台 import java.util.Random;class demo09 { public static void main(Str ...
- python3控制语句---选择结构语句
python中的控制语句主要有if.if--else.if--slif--else.pass语句.其实python的控制语句与其他语言的控制语句工作原理基本一样.控制语句可以分为选择结构语句和循环结构 ...
- oracle(sql)基础篇系列(一)——基础select语句、常用sql函数、组函数、分组函数
花点时间整理下sql基础,温故而知新.文章的demo来自oracle自带的dept,emp,salgrade三张表.解锁scott用户,使用scott用户登录就可以看到自带的表. #使用ora ...
- 20151013 C# 第一篇 流程控制语句
20151013 流程控制语句: 1.选择语句 if … else if...else 选择语句 if(布尔表达式){ 语句块:} if(布尔表达式){ 语句块1:}else{ 语句块2:} i ...
- linux shell 流程控制(条件if,循环【for,while】,选择【case】语句实例 --转载
http://www.cnblogs.com/chengmo/archive/2010/10/14/1851434.html nux shell有一套自己的流程控制语句,其中包括条件语句(if),循环 ...
- (旧)子数涵数·C语言——条件语句
首先,我们讲一下理论知识,在编程中有三种结构,分别是顺序结构.条件结构.循环结构,如果用流程图来表示的话就是: 那么在C语言中,如何灵活运用这三种结构呢?这就需要用到控制语句了. 而条件语句便是控制语 ...
随机推荐
- windows钩子 Hook示例
1.首先编写一个 win32 dll工程. #include "stdafx.h" int WINAPI add(int a,int b) { return a+b; } BOOL ...
- PyMongo和MongoEngine
参见 http://stackoverflow.com/questions/5712857/pymongo-vs-mongoengine-for-django https://api.mongodb. ...
- 两款高性能并行计算引擎Storm和Spark比較
对Spark.Storm以及Spark Streaming引擎的简明扼要.深入浅出的比較,原文发表于踏得网. Spark基于这种理念.当数据庞大时,把计算过程传递给数据要比把数据传递给计算过程要更富效 ...
- python16_day12【html、css】
一.HTML 所有HTML标签操作 <!DOCTYPE html> <html lang="en"> <head> <!--编码--> ...
- beego——session控制
beego内置了session模块,目前session模块支持的后端引擎包括memory.cookie.file.mysql.redis.couchbase.memcache.postgres, 用户 ...
- 微信小程序组件text
基础内容text:官方文档 Demo Code var initData = 'this is first line\nthis is second line' var extraLine = []; ...
- bug最后汇总-2018/08/03
一.对于点击后请求时间过长的按钮 现象:容易给用户点击无效的错觉,从而导致多次点击,从而发出多个相同请求,这显然是不符合我们意愿的 解决: 用户点击发出多个请求:加个锁,当用户点击后,将锁关闭,使用户 ...
- AFNetworking 3.0 解决加密后请求参数是字符串问题
把整个请求参数的json加密生成一个字符串传给服务器,错误提示:[NSJSONSerialization dataWithJSONObject:options:error:]: Invalid top ...
- Centos 7 Sublime 安装 package control
1. 修改installed Packages 下的package Control.sublime-package(原文件是个空的文件) 2. 下载channel_v3.json 可放在任何位置并在s ...
- 在Linux系统中使用蓝牙功能的基本方法
首先确定硬件上有支持蓝牙的设备,然后运行如下命令,就可以开到我们的蓝牙设备了: lsusb 运行hciconfig可以看到:从上图可以看出,我们的蓝牙设备是hci0运行hcitool dev可以看到我 ...