前言:机器码生汇编,汇编生C,C生万物
飞机大战的参考框架:
加载背景音乐
播放背景音乐
产生我方飞机
interval=0
while True:
if 关闭:
退出程序
interval += 1
if interval == 50:
产生小飞机
移动小飞机位置
刷新屏幕
interval=0
if 鼠标移动:
我方飞机中心位置=用户鼠标位置
屏幕刷新
if 我方飞机与小飞机接触:
我方坠毁,播放撞机音乐
修改我方飞机图案
打印"game over"
停止背景音乐
1.条件语句
elif=else if,且缩进格式产生变化,如下所示,两程序等效:
#程序一
score=int(input('enter a score'))
if 100 >= score > = 90:
print('A')
elif 90 >= score >= 80:
print('B')
else:
print('error')
#程序二
score=int(input('enter a score'))
if 100 >=s core >= 90:
print('A')
else:
if 90 >= score >= 80:
print('B')
else:
print('error')
悬挂else
if(h>2)
if(h>7)
print("happy")
else
print("hehe")
以上代码else想同外层if匹配,但根据if,else的就近匹配原则,else属于内层if,称为悬挂else
Python的缩进使用强制规定使得代码必须正确对齐,由程序员决定else属于哪个if,不会出现悬挂else的问题
2.三元操作符
语法:a=x if 条件 else y
表示当条件为真时执行a=x,否则执行a=y,如
small=x if x<y else y
3.断言
assert为关键字,当关键字后边的条件为假时,程序自动崩溃,抛出AssertionError异常
用于在程序中置入检查点,控制当程序某条件为真时,才能正常运行。
4.for循环(计数器循环)
不同于C语言,Python的for循环自动调用迭代器的next()方法,会自动捕获StopIteration异常并结束循环,如
>>>favorite="FishC"
>>>for each in favourite:
print(each,end='')
FishC
5.range()
语法:range([start,] stop[, step=1])
该函数有3个参数,[]表示这两个参数可选,step=1表示第三个参数的默认值为1
该函数作用:生成一个从start参数的值开始,到stop参数的值结束的数字序列
特殊地,range(5)表示将start参数设定为0,生成0-4的所有数字,包含0但不包含5
>>>for i in range(5):
print(i)
0
1
2
3
4
同理,range(2,9)生成2-8的所有数字,不包含9,range(1,10,2)生成1,3,5,7,9
6.break语句
终止当前循环,跳出循环体(全部跳出)
7.continue语句
终止本轮循环,开始下一轮的循环(跳出本次循环),即测试循环条件后继续下一次循环