是分支语句让程序变得有了 “智慧”,也正是分支语句让他学会了拒绝做某事和坚持做下去,让我们瞧瞧他。
操作系统:window7 x64
编程IDE:Pycharm 2016.1.2
Python版本:3.6.1
版权所有:_ O E _ , 转载请注明出处:http://blog.csdn.net/csnd_ayo
- 引言
- 简介
- if else 分支
- 简述
- 基础
- 引申
简述
英文原文
Any object can be tested for truth value, for use in an if or while condition or as operand of the Boolean operations below. The following values are considered false: 1. None 2. False 3. zero of any numeric type, for example, 0, 0.0, 0j. 4. any empty sequence, for example, '', (), []. 5. any empty mapping, for example, {}. 6. instances of user-defined classes, if the class defines a __bool__() or __len__() method, when that method returns the integer zero or bool value False. All other values are considered true — so objects of many types are always true. Operations and built-in functions that have a Boolean result always return 0 or False for false and 1 or True for true, unless otherwise stated. **(Important exception: the Boolean operations or and and always return one of their operands.)**
中文译文
任何对象都可以看作一个真值(布尔值),如果条件(的结果)出现如下的操作数,会被认为是假值。
1. NONE (空值) 2. False (假值) 3. 任何 0 的数值类型,例: 0(整型0), 0.0(浮点类型0), 0j(不懂他在说什么)。 4. 任何空的序列,例: ''(字符类型),()(元祖类型),[](列表类型)。 5. 任何空的映射,例:{}(字典类型) 6. 定义的类中若实现了 __bool__() 或者 __len__() 方法,当这个方法返回 False 或者 0 的时候。
(除上面举例外的)所有其他值,都被认为是真值(True),所以许多类型是真值。
操作函数和内置函数,他们有一个布尔返回值,除非有特别说明,否则他们总是返回 0 或者 False 和 1 或者 True。(重要例外:布尔值 或者 and关键字 总是返回一个他们的操作数)
基础
标准语法
伪代码示例
如果 操作数: 业务逻辑区 或者 操作数: 业务逻辑区 否则: 业务逻辑区
代码示例
num = 1 if num > 10: print("num > 10") elif num == 10: print("num 等于 10") else: print("num < 10")
简单解析
程序自上向下开始进行条件判断,整个分支语句只会执行且最多只执行一块条件语句。
从if
(elif)关键字 开始到:
结束,这段语句代码被视为条件(操作数),该条件(操作数)最后的结果会根据规则判断其真假。
条件若为真则执行对应的业务逻辑,若结果为假,则继续向下判断其他分支条件(elif),若没有一个符合条件语句为真,则执行else
内容里的业务逻辑,若该分支语句中没有else
则都不执行。
引申
满分的小明
score = 100 if score > 60: print("good") elif score > 80: print("great") elif score > 90 print("perfect") elif score == 60 print("ok") else: print("keep trying")
解析
- 程序自上向下开始进行条件判断
- 整个分支语句只会执行且最多只执行一块条件语句。
结果
good