今天,说一下编程常用的分支和循环,基本上每个程序都会用到的,在前面的文章也有提到和用到过这两个东西,只是当时就是以拿来用为目的的而已。今天,我又看了小甲鱼的视频,注意:下面用到的很多图片和案例来源与小甲鱼的《零基础Python学习》,这里仅仅是个人笔记:

1.打飞机游戏框架【说明分支和循环的重要性】

#《打飞机游戏》框架
加载游戏背景音乐
播放背景音乐(设置为单曲循环)
我方飞机诞生
时间间隔 = 0
while True:
       if 用户点击关闭按钮:
             退出程序
       时间间隔 +1
       if  时间间隔 ==50:
             小飞机诞生
        小飞机移动一个位置
        屏幕刷新
       if  用户鼠标产生移动:
             我方飞机中心位置 = 用户鼠标位置
             屏幕刷新
       if  我方飞机与敌方飞机碰撞
             我方挂
             播放撞机音乐
             修改飞机图案
             打印"Game Over"
             淡出背景音乐

2.分支结构

分支结构大家也陌生,但是如何把他用好呢?下面举一个小甲鱼给的例子:

Python每个循环延迟两秒 python循环间隔_for循环

方法一:

#method 1
score = input("请输入你的分数:")
score = int(score)

if score > 90 and score <= 100:
    print("A")
if score > 80 and score <= 90:
    print("B")
if score >= 60 and score <= 80:
    print("C")
if score < 60:
    print("A")
else:
    print("输入有误")

方法二:

#method 2
score = input("请输入你的分数:")
score = int(score)

if score > 90 and score <= 100:
    print("A")
else:
    if score > 80 and score <= 90:
        print("B")
    else:
        if score >= 60 and score <= 80:
            print("C")
        else:
            if score < 60:
                print("A")
            else:
                print("输入有误")

方法三:

#method 3
score = input("请输入你的分数:")
score = int(score)

if score > 90 and score <= 100:
    print("A")
elif score > 80 and score <= 90:
    print("B")
elif score >= 60 and score <= 80:
    print("C")
elif score < 60:
    print("A")
else:
    print("输入有误")

这三个方法看起来都差不多,但是实际上有着天壤之别。等我嘻嘻道来,

方法一呢,一个 if 到底,这样的话每一次运行程序都会判断 每一个if里面的条件,方法二和方法三呢,只会在上面的if条件不符合

时才执行下一个if的判断,如果符合了不会进行判断,大大减少了CPU的占用时间【极力推荐使用方法三】

     2.1悬挂“else”

   

Python每个循环延迟两秒 python循环间隔_Python每个循环延迟两秒_02

     2.2 条件表达式(三元操作符)

    

Python每个循环延迟两秒 python循环间隔_小甲鱼_03

    解释:small = x if x < y else y,如果x<y为True,输出x,否者输出y

    2.3断言

    

Python每个循环延迟两秒 python循环间隔_Python每个循环延迟两秒_04

3.循环结构

   3.1 while循环

   格式:  while   条件:

                         循环体

   这个很简单,没什么可说的

   3.2 for循环

   for循环在Python中有着与其他语言的for循环不同的特点:就是更加智能了

   格式:  for  目标  in  表达式 :

                      循环体

   还是上例子看起来简单一点,

>>> str2 = 'king'
>>> for k in str2:
	print(k,end = ' ')

	
k i n g 

>>> list1 = ['king','joke','jone','kingjam']
>>> for k in list1:
	print(k,end = ' ')

	
king joke jone kingjam

  就是说for循环会从表达式第一个到最后一个为止,如果不使用break 和continue跳出的话

  这是因为这样,它结合起元组,列表字符串功能就牛逼了

  先介绍一个内置函数:range

Python每个循环延迟两秒 python循环间隔_for循环_05

上例子:

>>> range1 = range(5)
>>> range2 = range(2,6)
>>> range3 = range(0,10,2)
>>> list1 = list(range1)
>>> list2 = list(range2)
>>> list3 = list(range3)
>>> list1
[0, 1, 2, 3, 4]
>>> list2
[2, 3, 4, 5]
>>> list3
[0, 2, 4, 6, 8]
>>> for k in list1:
	print(k,end = " ")

	
0 1 2 3 4

  对于for的灵活运用要自己体会,敲敲代码

4.说到循环结构,必须要提到的两个关键字就是:break  和  continue

  break:跳出循环

  continue:跳出本次循环