Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。

获取条件语句的执行结果的过程就是真假值判断

 #首先需要说明在Python中
 #假值(False):0、None、空对象('',[],{})
 #真值(True) :除了假值以外的值
 #如果拿到一个对象,不知道其为False还是True,可以用bool()函数来判断

 print(bool(''))   #False

 #单独的一个对象的布尔值确定了
 #如果一个对象和其他对象进行比较,比较结果的布尔值如何确定
 #就拿数字类型的对象间的关系:>(大于)、<(小于)、==(等于)、>=(大于等于)、<=(小于等于)

 print(3 > 5)      #False

 #如果需要多个条件表达式配合,就要用到or、and
 #or 表示“或”的关系 即两个条件表达式中只要有一个的结果为True,该真假值测试的结果即为True
 #and表示“与”的关系 即两个条件表达式中的结果均为True,该真假值测试的结果即为True

 #Python中的条件真假值判断是短路的,一旦真假值判断结果确定就停止布尔运算
 #举个栗子,如 or 前后的两个条件表达式,如果前边的结果为True,or后的条件表达式就不再运算,即可得出最后的结论,该真假值判断的结果为True

Python 编程中 if 语句用于控制程序的执行,基本形式为:

 score = 57

 if score >= 60:
     print('及格')
 else:
     print('不及格')
其中"判断条件"成立时(非零),则这行后面的语句,而执行内容可以多行,以缩进来区分表示同一范围。
当判断条件为多个值是,可以使用如下形式:
 score = 57
 if score >= 90:
     print('优秀')
 elif score >= 80:
     print('良好')
 elif score >= 70:
     print('良')
 elif score >= 60:
     print('及格')
 else:
     print('不及格')

由于 python 并不支持 switch 语句,所以多个条件判断,只能用 elif 来实现,如果判断需要多个条件需同时判断时,可以使用 or (或),
表示两个条件有一个成立时判断条件成功;使用 and (与)时,表示只有两个条件同时成立的情况下,判断条件才成功。
 
当if有多个条件时可使用括号来区分判断的先后顺序,括号中的判断优先执行,此外 and 和 or 的优先级低于>(大于)、<(小于)等判断符号,即大于和小于在没有括号的情况下会比与或要优先判断。
 
还可以用别的方式来实现根据条件选择要执行的代码块
 def add(a):
     print(a +1)

 operation = {
 'add'    : add , #函数名
 'update' : lambda x:print(x + 2),  #lambda表达式,后边章节会介绍到
 'delete' : lambda x:print(x + 3),
 }

 def default_method(x):
     print('默认方法,什么都不做,我就是个占位的')

 operation.get('delete',default_method)(10)
 可以根据条件不同执行不同代码的还有三元表达式
 # 三元表达式
 score = 75
 result =  '及格'   if score >= 60   else  '不及格'

 print(result)

 及格

 #根据三元表达式实现的效果,其作用等效于
 if  条件:
     代码块1
 else:
     代码块2
 
 
 
 
 
 
 
 

3.1 if 条件分支语句的更多相关文章

  1. MATLAB 的条件分支语句

    MATLAB 的条件分支语句: 1)if...end  2)if...else...end  3) if...elseif...elseif...else...end  a=; fprintf('\n ...

  2. 记mysql条件分支语句CASE WHEN THEN ELSE END的使用

    记一次基于mysql数据库查询时条件分支语句使用 表达式格式:CASE column WHEN 条件1 THEN 表达式1 WHEN 条件2 THEN 表达式2 .... ELSE 表达式 END [ ...

  3. JS基础_条件分支语句:switch语句

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  4. JavaScript基础&实战(3)js中的流程控制语句、条件分支语句、for循环、while循环

    文章目录 1.流程控制语句 1.1 代码 1.2 测试结果 2.弹窗提示输入内容 2.1 代码 2.2 测试结果 3.条件分支语句 3.1 代码 3.2 测试结果 4.while和 do...whil ...

  5. python学习笔记(6)--条件分支语句

    if xxxx: coding if xxxx: coding else: coding if xxxx: coding elif xxx: coding …… else: coding 或者一种简洁 ...

  6. 条件分支语句(SWICH语句)

    语法 swich(条件表达式){ Case 表达式: 语句……. Break; Case 表达式: 语句……. Break; Case 表达式: 语句……. Break; default: 语句……. ...

  7. JavaScript中条件分支语句和循环语句的使用,用简洁的代码实现强大功能

    if()  else if()   else() alert() 弹出警告框 prompt() 输入框,确定:返回输入信息:取消:返回null <!DOCTYPE html> <ht ...

  8. shell编程之条件与分支语句

    1.if条件分支语句 if   expr1(条件测试)   #如果expr1为真,返回0 then commands1 elif  expr2 then commands2 .... ... else ...

  9. 前端笔记知识点整合之JavaScript(三)关于条件判断语句、循环语句那点事

      一.条件分支语句 条件分支语句,也叫作条件判断语句,就是根据某种条件执行某些语句,不执行某些语句. JS中有三种语法是可以表示条件分支的 1.1 if……else…… 条件分支的主力语法,这个主力 ...

随机推荐

  1. scrapy_xpath

    什么是xpath? 路径表达式 在xml和html中进行导航 包含标准函数库 遵循w3c标准 xpth节点关系是什么? 父节点 子节点 兄弟节点 先辈节点 后代节点 xpth语法 a         ...

  2. maven核心概念--插件和目标

    maven的核心概念有很多,我们这里先来看Plugins和Goals. 在上一篇博客中,我们用两种类型的命令行参数运行了Maven. 第一条命令,create.这是一条单个的插件目标,Archetyp ...

  3. JAVA中JPA的主键自增长注解设置

    JPA的注解来定义实体的时候,使用@Id来注解主键属性即可.如果数据库主键是自增长的,需要在增加一个注解@GeneratedValue,即: @GeneratedValue(strategy=Gene ...

  4. Git 生成 SSH 公钥

    2018-01-05 11:24:04 许多 Git 服务器都使用 SSH 公钥进行认证. 为了向 Git 服务器提供 SSH 公钥,如果某系统用户尚未拥有密钥,必须事先为其生成一份. 这个过程在所有 ...

  5. python selenium+phantomjs alert()弹窗报错

    问题:用selenium+phantomjs 模拟登陆,网页用JavaScript的alert("登陆成功")弹出框,但是用switch_to_alert().accept()报错 ...

  6. 基于JAVA实现的排序算法总结

    常用的排序方法有:冒泡排序.快速排序.选择排序.插入排序.归并排序,除此之外,还有基数排序.鸡尾酒排序.桶排序.鸽巢排序.希尔排序等,这里着重介绍下前半段列举的几种常见方法的实现. 1. 冒泡排序法: ...

  7. mongodb进阶

    一.游标 先插入一张表的数据 for(i=0; i<100; i++) { db.c.insert({x : i}); } 定义一个游标 var cursor = db.c.find(); 以循 ...

  8. wpf timePicker 时间选择控件

    wpf里有日期选择控件,但没有时间选择控件.其他地方也有类似的,但效果并不太好,而且复杂.所以就自己写了个.参考codeproject上的. 分两部分. 第一部分是.cs文件.也就是control控件 ...

  9. 免费分享Navicat12各版本破解(仅供学习使用)

    花了几个小时终于找到比较"绿色"的安装包了...(无力吐槽下现在网上好多挂羊头卖狗肉的网站) https://pan.baidu.com/s/1geMIkfT 密码:9a98 里面 ...

  10. Springboot security cas源码陶冶-ExceptionTranslationFilter

    拦截关键的两个异常,对异常进行处理.主要应用异常则跳转至cas服务端登录页面 ExceptionTranslationFilter#doFilter-逻辑入口 具体操作逻辑如下 public void ...