小甲鱼零基础学习python_5【列表 成员/for while循环/range/分支--条件表达式/Break/Continue 】


循环与分支

今天学习了python的循环与分支,以及配套的几个小内容

1.首先是一个飞机大战小游戏的轮廓:

这里写图片描述

interval的设置是防止整个屏幕充满小飞机,因为while每次执行是非常快的,若每执行一次就诞生一个小飞机,屏幕会密密麻麻。

2.分支:

Python可以有效避免”悬挂else”,提高程序效率:
a.什么是”悬挂else”?
这里写图片描述

C语言里面:这里else其实是就近原则,所以else里其实是  2<hi<7
Python里面,else搭配的是第一个if,因为缩进;所以这里else为 hi<=2

b.三元操作符

#三元操作符  定义,判断
x,y=4,5
small=x if x<y else y
print(small)

这里写图片描述

条件表达式是python唯一一个三目(元)操作符
元/目:操作数个数
这里写图片描述
语法:
X if 条件满足 else Y
即 当条件满足时,结果为X,否则为Y


#定义一个判定是否字符串是否是数字的函数
def StrisnumJudge(value):
    valueStr = str(value)
    if valueStr.isdigit() is True:
        # 仅仅针对整型
        return True
    else:
        try:
            #针对浮点型的尝试
            float(valueStr)
        except(ValueError):
            return False
        except(TypeError):
            return False
        else:
            return True


UserIn=input("请输入一个分数:\n")

if StrisnumJudge(UserIn) is True:
    score = float(UserIn)
    if score < 0 or score > 100:
        print("输入格式错误!\n")
    elif score < 60:
        print('D')
    elif score < 80:
        print('C')
    elif score < 90:
        print('B')
    else:
        print('A')

这里写图片描述

3.断言 assert

这里写图片描述

AssertionError可以被用户自己写程序捕获,后期会讲到

assert 4>3  #由于条件正确,正常执行程序
assert 3>4  #抛出AssertionError 异常,可以写程序捕获

这里写图片描述

4.for / 列表member[] / list/ range

· for


print('\n\n\n')
#打印出字符串每个字符,每次打印后加一个空格
favourite='zwh'
for i in favourite:
    print(i, end=' ')
print('\n')

· 列表


#列表,类似于C的数组
member=['zwh','pig','yhr']
for i in member:
    print(i,len(member),end='----\n')
#end为关键字,具体参照print 的reference

· list

print('\n')
#把生成的序列可以放在list里显示
print(list(range(0,6,2)))
print('\n')

· range
这里写图片描述

[]括起来的部分为可选的参数
生成的数字序列不包括stop本身!
Step为步进,每次增加多少

#把生成的序列可以放在for循环里显示
for each in range(0,9,3):
    print(each,end=' ')
 # 第一个参数start默认为0,可选;第二个stop 必选;第三个为step步进,可选

这里写图片描述

5.break / continue

Break:终止循环,退出循环
Continue:终止本轮循环,且continue后语句不会被执行
测试循环条件:
条件为真则继续下一轮循环
条件为假则退出循环

case 1: continue后语句不会被执行

for i in range(10):
    if i%2!=0:
        print(i)
        continue
        print('----')
        break
    i+=2
    print(i)
    #虽然这里i被改变,但是进入for语句时,i再次被改变为遍历range中的值

这里写图片描述

case 2: break终止循环

for i in range(10):
    if i%2!=0:
        print(i)
        #continue
        print('----')
        break
    i+=2
    print(i)
    #虽然这里i被改变,但是进入for语句时,i再次被改变为遍历range中的值

这里写图片描述


  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值