|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 six_mao 于 2017-7-17 17:36 编辑
分支和循环
编程语言都应该拥有分支和循环。从打飞机来讲:
进入游戏,其实就是进入了一个循环之中,如果在游戏中没有触发死亡机制,敌机一直在产生就说明一直在一个循环之中。
分支就是使用if做判断,条件满足做何种事情,条件不满足做何种事情。
打飞机游戏参考框架:
- 加载背景音乐
- 播放背景音乐(设置单曲循环)
- 我方飞机诞生
- interval = 0
- while True:
- if 用户是否点击了关闭按钮:
- 退出程序
-
- interval += 1
- if interval == 50:
- interval = 0
- 小飞机诞生
- 小飞机移动一个位置
- 屏幕刷新
-
- if 用户鼠标产生移动:
- 我方飞机中心位置 = 用户鼠标位置
- 屏幕刷新
-
- if 我方飞机与小飞机发生肢体冲突:
- 我方挂,播放撞机音乐
- 修改我方飞机图案
- 打印“Game over”
- 停止背景音乐,最后淡出
复制代码
课堂小练习:按照100分制,90分以上成绩为A,80~90为B,60~80为C,60以下为D。
第一种:
- temp = input("请输入一个分数:")
- score = int(temp)
- if 100 >= score >= 90:
- print("A")
- if 90 > score >= 80:
- print("B")
- if 80 >score >= 60:
- print("C")
- if 60 > score >= 0:
- print("D")
- else:
- print("输入有误")
复制代码
第二种:
- temp = input("请输入一个分数:")
- score = int(temp)
- if 100 >= score >= 90:
- print("A")
- else:
- if 90 > score >= 80:
- print("B")
- else:
- if 80 >score >= 60:
- print("C")
- else:
- if 60 > score >= 0:
- print("D")
- else:
- print("输入有误")
复制代码
第三种:
- temp = input("请输入一个分数:")
- score = int(temp)
- if 100 >= score >= 90:
- print("A")
- else:
- if 90 > score >= 80:
- print("B")
- else:
- if 80 >score >= 60:
- print("C")
- else:
- if 60 > score >= 0:
- print("D")
- else:
- print("输入有误")
复制代码
结果分析:
第一种,会判断多次判断有几个if就需要做几次判断。
第二种和第三种是只要判断成立就不需要再做判断。另外Python可以避免“悬挂else”,这也要求对Python缩进的正确使用。
条件表达式(三元操作符)
”多少元“操作符的意思是这个操作符有多少个操作数。
那来看看三元操作符的庐山真面目吧!
三元操作符语法:a = x if 条件 else y
表示当条件为True的时候,a的值赋值为x,否则赋值为y。
断言(assert)
assert这个关键字称为“断言”,当这个关键字后面的条件为假的时候,程序自动崩溃并抛出AssertionError的异常。
当我们在测试的时候经常使用。一般来说,可以用它在程序中置入检查点,当需要确保程序在某个条件一定为真才能让程序正常工作,assert关键字就非常有用了。
while循环语句
while语句与if条件分支类似。
语法
for循环语句
它比较C语言的for循环更加强大,主要表现在它会自动调用迭代器的next()方法,会自动捕获StopIteration异常并结束循环。例子:
- >>> favourite = "Fishc"
- >>> for each in favourite:
- print(each, end = " ")
-
- F i s h c
复制代码
for循环还有一个好伙伴:range()内建函数
语法:
- range([start,]stop[,step = 1])
复制代码
其中中括号中的两个函数是可选的,range()这个BIF的作用是生成一个start参数的值开始(默认设置为0),到stop参数结束数字序列(序列中不包括stop参数),可以理解为一个左闭右开的区间,step表示步长(默认为1)。例子:
- >>> for i in range(1,10,2):
- print(i)
-
- 1
- 3
- 5
- 7
- 9
- >>>
复制代码
break语句
break语句的作用是终止当前循环,跳出循环体。
continue语句
continue语句的作用是终止本轮循环并开始下一轮循环。给一个例子:
- for i in range(10):
- if i % 2 != 0:
- print(i)
- continue
- i += 2
- print(i)
复制代码
课后作业整理:
[007]4.成员资格运算符,用于检查一个值是否在序列中,在返回True,不在返回False。
|
评分
-
查看全部评分
|