LornaLau 发表于 2018-8-20 21:53:33

零基础入门Python-7课分支和循环

完全小白听课自学,年纪大了感觉脑细胞有点不够用~{:10_266:}

打飞机游戏的框架,加上interval之后就不理解了:
interval是定义了一个表示时间间隔的变量?
加入到循环里的if条件那里,不理解逻辑为什么要这样写?
另外,if条件可以没有else对吗?只判断if为真的情况,如果出现不在if条件下的情况呢,就报错吗?

加载背景音乐
播放背景音乐 (设置单曲循环)
我方飞机诞生
interval = 0

while True:
   if 用户是否点击了关闭按钮:
      退出程序

    interval+=1
    if interval==50:
      interval=0
      小飞机诞生
      
    小飞机移动一个位置
    屏幕刷新

    if 用户鼠标产生了移动:
      我方飞机中心位置=用户鼠标位置
      屏幕刷新

    if 我方飞机与小飞机发生肢体冲突:
      我方挂,播放撞机音乐
      修改我方飞机图案
      打印“Game Over”
      挺直背景音乐,最好淡出

claws0n 发表于 2018-8-21 10:22:29

interval是定义了一个表示时间间隔的变量?
    计时器比较好
另外,if条件可以没有else对吗?只判断if为真的情况,如果出现不在if条件下的情况呢,就报错吗?
    如果(条件):就会(这样);不然(没有说明,那就不怎么样,不会报错)

加载背景音乐
播放背景音乐 (设置单曲循环)
我方飞机诞生
interval = 0          #计时器初始化为 0

while True:
   if 用户是否点击了关闭按钮:
      退出程序

    interval+=1          #每循环一次,加一
    if interval==50:    #每累加到 50
      interval=0      #重设计时器
      小飞机诞生
      
    小飞机移动一个位置
    屏幕刷新

    if 用户鼠标产生了移动:
      我方飞机中心位置=用户鼠标位置
      屏幕刷新

    if 我方飞机与小飞机发生肢体冲突:
      我方挂,播放撞机音乐
      修改我方飞机图案
      打印“Game Over”
      挺直背景音乐,最好淡出

程序员#? 发表于 2018-8-21 12:27:14

你几个意思?问什么?

LornaLau 发表于 2018-8-21 16:11:31

claws0n 发表于 2018-8-21 10:22
interval是定义了一个表示时间间隔的变量?
    计时器比较好
另外,if条件可以没有else对吗?只判断if为 ...

谢谢!
请问计时器的单位是什么呢?累加到50是多长时间?
循环是每过50出现一只新的小飞机的意思吗?

claws0n 发表于 2018-8-21 16:35:14

LornaLau 发表于 2018-8-21 16:11
谢谢!
请问计时器的单位是什么呢?累加到50是多长时间?
循环是每过50出现一只新的小飞机的意思吗?

基本上是没有单位的,不像数学
至于时间,要看主机的运算速度
循环每一次加一,每当计时器/计数器计到 50 的时候,就会出现一只新的飞机,然后重置计时器,周而复始
跟着代码,应该是先重置,才刷新飞机
页: [1]
查看完整版本: 零基础入门Python-7课分支和循环