您的位置:首页 > 编程语言 > Python开发

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

2016-07-09 16:59 381 查看
一、条件分支

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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: