欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

(P8-P9)了不起的分支和循环:Python可以有效避免“悬挂else” ,断言(assert),while循环,break,continue

程序员文章站 2024-01-05 10:36:46
...

1.打飞机游戏逻辑

  • 任何发生的改变都需要屏幕刷新
加载背景音乐
播放背景音乐(设置单曲循环)
我方飞机诞生
interval = 0
 
while True:
    if 用户是否点击了关闭按钮:
        退出程序
    interval += 1
    if interval == 50:
        interval = 0
        小飞机诞生
    小飞机移动一个位置
    屏幕刷新
 
    if 用户鼠标产生移动:
        我方飞机中心位置 = 用户鼠标位置
        屏幕刷新
 
    if 我方飞机与小飞机发生肢体冲突:
        我方挂,播放撞机音乐
        修改我方飞机图案
        打印"Game Over"
        停止背景音乐,最好淡出

2.Python可以有效避免“悬挂else”

  • 现在小甲鱼来考考大家:
    按照100分制,90分以上成绩为A,80到90为B,60到80为C,60以下为D,写一个程序,当用户输入分数,自动转换为ABCD的形式打印。
score = int(input('请输入一个分数:'))
if 100 >= score >= 90:
    print('A')
elif 90 > score >= 80:
    print('B')
elif 80 > score >= 60:
    print('C')
elif 60 > score >= 0:
    print('D')
else:
    print('输入错误!')
  • 什么叫“悬挂else”?
    我们举个例子,初学C语言的朋友可能很容易被以下代码欺骗:
    C语言中,这样可能会造成else和if( hi > 7 )搭配在一起
if ( hi > 2 )
	if( hi > 7 )
		printf(“好棒!好棒!”);
else
	printf(“切~);
  • 条件表达式(三元操作符)
语法:x if 条件 else y

有了这个三元操作符的条件表达式,你可以使用一条语句来完成以下的条件判断和赋值操作:

x, y = 4, 5

if x < y:
  small = x
else:
  small = y

例子可以改进为
small = x if x < y else y    #如果x小于y,则small等于x,否则等于y

3.断言(assert)

  • assert这个关键字我们称之为“断言”,当这个关键字后边的条件为假的时候,程序自动崩溃并抛出AssertionError的异常。
    eg:
    (P8-P9)了不起的分支和循环:Python可以有效避免“悬挂else” ,断言(assert),while循环,break,continue
    一般来说我们可以用Ta再程序中置入检查点,当需要确保程序中的某个条件一定为真才能让程序正常工作的话,assert关键字就非常有用了。

  • 你听说过成员资格运算符吗?
    Python 有一个成员资格运算符:in,用于检查一个值是否在序列中,如果在序列中返回 True,否则返回 False。
    例如:

>>> name = '小甲鱼'
>>> '鱼' in name
True
>>> '肥鱼' in name
False

4.while循环

  • while循环
while 条件:

                  循环体
  • for循环:表达式可以是列表,也可以是元组
语法:

for 目标 in 表达式:

     循环体
  • eg:
    end表示每次取FishC中一个字符及空格输出
    (P8-P9)了不起的分支和循环:Python可以有效避免“悬挂else” ,断言(assert),while循环,break,continue
    (P8-P9)了不起的分支和循环:Python可以有效避免“悬挂else” ,断言(assert),while循环,break,continue
  • range()函数
range( [strat,] stop[, step=1] )
这个BIF有三个参数,其中用中括号括起来的两个表示这两个参数是可选的。
step=1表示第三个参数的值默认值是1range这个BIF的作用是生成一个从start参数的值开始到stop参数的值结束的数字序列。

(P8-P9)了不起的分支和循环:Python可以有效避免“悬挂else” ,断言(assert),while循环,break,continue

  • break语句(结束本层循环)
bingo = '小甲鱼是帅哥'
answer = input('请输入小甲鱼最想听的一句话:')

while True:
    if answer == bingo:
        break
    answer = input('抱歉,错了,请重新输入(答案正确才能退出游戏):')

print('哎哟,帅哦~')
print('您真是小甲鱼肚子里的蛔虫啊^_^')

(P8-P9)了不起的分支和循环:Python可以有效避免“悬挂else” ,断言(assert),while循环,break,continue

  • continue语句(当前位置结束本次循环,重新开始下次循环)
for i in range(10):
    if i%2 != 0:
        print(i)
        continue
    i += 2
    print(i)

(P8-P9)了不起的分支和循环:Python可以有效避免“悬挂else” ,断言(assert),while循环,break,continue

相关标签: python

上一篇:

下一篇: