【Python基础】02-控制流

02-控制流

在Python中有三种控制流语句————if、while和for

2.1 If 条件

if语句用来检验一个条件,如果条件为真,那么后面的语句块就会被执行,如果条件为假,语句块就不会被执行。

2.1.1 If 条件用法

if条件单分支

if条件: 满足条件后要执行的代码

if双分支(if...else...)

if条件: 满足条件后要执行的代码else:if条件不满足就走这段

if多分支(if...elif...elif...)

if条件: 满足条件后要执行的代码elif条件: 上面的条件不满足就这个elif条件: 上面的条件不满足就这个elif条件: 上面的条件不满足就这个else: 上面的条件不满足就这个

2.1.2 If 应用:猜年龄游戏(基础版)

实现功能:让用户猜年龄,猜对了则结束,猜不对则提示过大或者过小

解释上述代码:

1.我们将变量number设置为23,然后我们将用户输入的数字用int()函数转换为数字并存储在guess变量中。(因为字符不能和数字进行比较大小,需要用int()函数转换)。

2.利用if语句判断两个数字的大小:如果两者相等,则屏幕打印(print())出相对内容;如果大于number,则提示输入小一点数字;如果小于number,则提示输入大一点数字。

2.2 While 循环

只要在一个条件为真的情况下,while语句允许你重复执行一块语句。while语句有一个可选的else从句。

2.2.1 while 循环用法

while用法

while条件: 执行代码...

while...else...用法

当while条件不成立的时候,执行else后面的语句

while条件: 执行代码...else: 执行代码...

2.2.2 while 应用:猜年龄游戏升级版(一)

实现功能:在基础版之上追加个功能,用户可以猜三次,三次之后提示无法机会已经用完,结束。

count=number=23whilecountnumber:print("Try smaller!")else:print("Try bigger")#如果猜测小于实际年龄count+=1else:print("对不起你的机会已经用完了")

解释上述代码:

我们把input和if语句放在了while循环内,并在

while循环开始前把count变量设置为0,并将while设置为count

break表示当输入的值等于number的时候,程序结束,直接退出,不执行之后的代码(有关break和continue的之后会讲哦~)

当count==3时候,while语句不执行,这时候执行else语句,程序结束

2.3 for 循环

for...in 是另外一个循环语句,它在一序列的对象上迭代,即逐一使用序列中的每个项目。之后会更加详细讲解,现在只需要知道的就是序列仅仅是一些项目的有序聚集。

2.3.1 for 循环用法:

for变量in序列对象

2.3.2 for 循环应用:

屏幕输出打印1到99的数字:

foriinrange(1,100):print(i)

解释上述代码:

why range(1,100),而不是range(1,99)?

答案:因为range函数取数只包含开头不包含结尾,典型的“顾头不顾尾”,所以取数1-99,range应该写成1-100

我们使用range函数生成这个数的序列

for循环在这个范围内递归,for i in range(1,100)相当于for i in [1,2,3,...,99],这就如同把序列中的每个数(或对象)赋值给i,一次一个,然后以每个i的值执行这个程序块

2.4 补充知识点:dead loop、break、continue

2.4.1 dead loop:死循环

dead loop就是死循环,如果while条件一直为真,则一直会执行while后面的语句,容易造成一直循环,也就是死循环,发现死循环后,记得在pycharm的左侧点击stop,停止死循环。

2.4.2 break:跳出循环

break用于完全结束一个循环,跳出循环体执行后面的语句

break 的初体验

当打印到5的时候,使用break跳出循环

count=whilecount

该程序只打印到5就终止

2.4.3 continue:跳出循环

continue只是终止本次循环,接着还执行后面的循环,break则完全终止循环

continue 的初体验

当打印到5的时候,使用continue跳出循环

count=whilecount

该程序只打印到5之后一直打印5,直到死循环

continue & break 的再遇见

循环过程中,因为某些原因,不想循环了,可以用continue或者break终止掉

只打印1-5和95-100的数字:

count=whilecount5andcount

  • 发表于:
  • 原文链接:http://kuaibao.qq.com/s/20180106G0T0EE00?refer=cp_1026

同媒体快讯

相关快讯

扫码关注云+社区