分支结构 if语句

发布时间:2017-09-02 11:33:33
分支结构 if语句

分支结构if语句

(1)条件和条件语句

(1.1)布尔变量

*下面的值在作为布尔表达式的时候,会被解释器看做假(false):

False None 0 "" () [] {}

也就是说,标准值False和None、所有类型的数字0(包括浮点型、长整型和其他类型)、空序列(比如空字符串、元组和列表)以及

空的字典都为假。其他的则被解释为真,包括特殊值True

*布尔值True和False属于布尔类型,bool函数可以用来转换其他值。

>>> bool(42) True >>> bool("milo") True >>> bool(0) False >>> bool([]) False >>> bool({}) >>> bool(None) False >>> bool(()) False >>> bool("") False *作用:主要用于判读语句中,用来判断:
— 一个字符串是否为空的
— 一个运算结果是否为零
— 一个表达式是否可用
(1.2)if语句
Python的if语句类似于其他语言。if语句包含一个逻辑表达式,使用表达式进行比较,在比较结果的基础上作出决定。
if expression:
statement(s)
如:
>>> if 1<2: print("ok") ok 易犯的错误:缩进问题。无缩进或者缩进没有对齐!
IndentationError:expected an indented block
建议:Python使用缩进作为语句分组的方法,可以使用4个空格代替缩进。
(1.3)else子句
之所以称之为子句,是因为它不是独立的语句,而只能作为if语句的一部分。
if expression:
statement(s)
else
statement(s)
如:
def fun(): return 1 if fun(): print("Good!") else: print("Terrible!") (1.4)elif子句
如果需要检查多个条件,可以使用elif。
if expression:
statement(s)
elif expression2:
statement(s)
elif expression3:
statement(s)
else:
statement(s)
如:
grade = int(input("Please input your grade: ")) if grade>89: print("A") elif grade>79: print("B") elif grade>69: print("C") elif grade>59: print("D") else: print("Please Come On!") (1.5)嵌套代码块
if语句可以嵌套if语句。
if expression1:
statement(s)
if expression2:
statement(s)
else:
statement(s)
如:
if x>60: print() if y>60: print() else: print("Terrible") else: print("Terrible")
----------------switch实现----------------


(1)switch语句用于编写多分支结构的程序,类似于if...elif...else语句。
但是,switch语句表达的更清晰,代码的可读性更高!

但是!Python中并没有提供switch语句!


(2)但是!!Python可以通过字典实现switch的功能。
实现方法:
第一步,定义一个字典。
第二步,调用字典的get()获取相应的表达式。


(3)案例:


------------------------------calculator.py----------------------------- #实现计算器的功能 add = lambda x,y:x+y subtract = lambda x,y:x-y multiply = lambda x,y:x*y divid = lambda x,y:x/y operators = {"+":add,"-":subtract,"*":multiply,"/":divid} print("Calculator !") print() print("We have operators: '+' '-' '*' '/'") operator = input("Please input the operator you need: ") if operators.get(operator): x = int(input("Please input the first number: ")) y = int(input("Please input the second number: ")) result = operators[operator](x,y) print() print(x,operator,y,"=",result) else: print("Not available !")

企业建站2800元起,携手武汉肥猫科技,做一个有见地的颜值派!更多优惠请戳:咸宁网站制作 http://xianning.666rj.com