我的Python第二篇 条件分支和循环篇

一、条件分支
1.格式:

if 条件:
条件为真(True)执行的操作
else:
条件为假(False)执行的操作

2.例:

print('班里查询考试成绩,得分100~90为A,得分89~80为B,得分79~60为C,得分59~0为D,输入其它则显示查询错误')
score = int(input('请输入你要查询的成绩:'))
if 100 >= score >= 90:
print('A')
elif 89 >= score >= 80:
print('B')
elif 79 >= score >= 60:
print('C')
elif 59 >= score >= 0:
print('D')
else:
print('输入错误')

if 判断条件可以简写为:

这里写图片描述

3.三元操作符:
例:
x,y = 4,5
if x < y:
small = x
else:
small = y
# 例子可以改进为
small = x if x < y else y
只要x是非零数值、非空字符串、非空list等,就判断为True,否则为False。

4.assert(断言)
当 assert 关键字后面的条件为 False 的时候,程序自动崩溃并抛出 Assertionerror 的异常。

assert 3 > 4
Traceback (most recent call last):
File "<pyshell#2>", line 1, in <module>
assert 3 > 4
AssertionError

二、while 循环:
当条件为 True 时执行循环体的内容,当条件不成立为 False 时结束循环;当循环体中设置语句修改条件,当 while 循环运行到指定位置时自动退出。

1.while 循环:
while 条件:
条件为真(True)执行的操作
例:

temp = int(input('猜猜我心里想的分数:'))
guess = temp
while guess != 5:
temp = int(input('猜错了,请重新输入:'))
guess = temp
if guess > 5 :
print('大了大了')
if guess < 5 :
print('小了小了')
else:
guess = 5
print('恭喜你,答对了!')
print('游戏结束,不玩了。')

2.break:触发后,中止循环并跳出当前循环体
例1:
answer = 'Python'
ask = input('我学的是哪种编程语言:\n')
while True:
if ask == answer:
print('猜对啦~')
break
else:
ask = input('不对不对,重新输入:\n')
print('游戏结束')

例2:可以设 while 条件为小于5次,循环体每运行一次则增加一次机会,当运行次数达到设定次数,循环体结束运行。

s = 0
while s < 5:
answer = int(input('请输入你要查询的分数:\n'))
ask = answer
if 100 >= ask >= 90:
print('你的分数是A类,请继续查询:\n' )
elif 89 >= ask >= 80:
print('你的分数是B类,请继续查询:\n' )
elif 79 >= ask >= 60:
print('你的分数是C类,请继续查询:\n' )
elif 59 >= ask >= 0:
print('你的分数是D类,请继续查询:\n' )
else:
print('输入错误,请重新输入:')
s += 1
print('查询结束')

例2 相对于 continue 循环:
i = 0
if i in range(1,10):
if i == 6:
break
print(i)

1
2
3
4
5
注:break 循环的条件是 i == 6,所以达到条件,循环停止。

3.continue:结束 continue 条件的循环,继续开始后面的循环。
例1:
i = 0
for i in range(1,10)
if i == 6:
continue
print(i)

结果:
1
2
3
4
5
7
8
9

注:continue 设定的条件是跳过6,所以循环到5,跳过条件,从7继续循环。

三、for…in:(计数器循环)
1.格式:
for 目标 in 表达式:
循环体

其中:目标表示每一次迭代的变量
表达式是一个列表/元组

例1:
a = 'Python'
for b in a:
print(b,end=' ')

P y t h o n

例2:
a = ['Python']
for b in a:
print(b,len(b))

Python 6

其中,len() 的作用是计算参数的长度并返回,b 为每次带入计数器的长度。

2.range([strat,]stop[,setp = 1])
是一个 BIF,是生成从 strat 参的值数开始到 stop 参数的值结束的数字序列,通常搭配 for in 循环使用。
有三个参数,其中 strat 、setp 为非必选参数
setp = 1,表示第三个参数默认值是1;如例3,步径。

注意:
range(5)
range(0, 5)
list(range(5))
[0, 1, 2, 3, 4]
range(5) 会生成一个返回值,从0 到 5;转变成一个 list(列表)后,值是从0 到 4.

例1 range(一个参数):

range(5)
range(0, 5)
for i in range(5):
print(i)

0
1
2
3
4

例2 range(两个参数):

range(1,9)
range(1, 9)
for i in range(1,9):
print(i)

1
2
3
4
5
6
7
8

注意:不包含 range(1,9) 9的值。

例3 range(三个参数):

range(1,11,2)
range(1, 11, 2)
for i in range(1,11,2):
print(i)

1
3
5
7
9

例4 用 for 循环求1+2+3+….+100的和:
num = 0
for i in range(1,101):
num += i
print(num)

1
3
6
10
...
...
4950
5050

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值