【Python篇】Python基础--基本条件循环(二)

旧城等待, 2023-01-04 11:49 212阅读 0赞

【Python篇】Python基础–基本条件循环之 循环语句

 如约来更新循环语句了.说到循环,有一定编程基础的小伙伴们都知道,我们最常用的循环莫过于 while循环,for循环和goto循环(不过goto也不怎么常用),所以今天就来说一说 while循环和 for循环

 来看一下本文大致结构:

  • while 循环
  • break语句continue语句
  • for 循环

while 循环

while循环 除了需要使用缩进来执行循环体里的语句,其它几乎和C语言相同。

  • 流程图
    在这里插入图片描述
  • 格式

    while 条件语句:

    1. 执行的语句1
    2. 执行的语句2
    3. ...
    4. 执行的语句N

当条件语句为真(True)时,就会执行while循环下的语句

  • 示例

下面的代码用于实现 1到100 的累加并输出:

  1. sum=0
  2. i=1
  3. while i <= 100:
  4. sum=sum+i
  5. i=i+1 #注意:Python中没有 i++ 或 i-- 这种自增或自减运算符
  6. print(sum)

 其次,while中的条件语句可以不唯一,但是不再像C语言一样用 &&||! 等逻辑运算符(因为Python中没有这些),而是用 and(与),or(或),not(非) 这三个Python中有的逻辑运算符来进行多个条件的连接。

例如:

  1. a = 1
  2. while a==1 or a==2: #当 a等于1 或 a等于2 进行while循环
  3. a = a + 1
  4. print(a) #输出 3
  • 死循环

 当我们需要计数很多次,甚至连我们自己也不知道要计数多少次的时候,死循环或许是一个不错的选择,while死循环一般格式如下:

  1. while True #使条件始终为真 例如" while 2>1: "
  2. 执行的语句1
  3. 执行的语句2
  4. ...
  5. 执行的语句N
  • while…else… 结构

 其次,介绍一下 while…else…结构 ,不过不常用。

格式如下:

  1. while 条件语句:
  2. 执行的语句1
  3. 执行的语句2
  4. ...
  5. 执行的语句N
  6. else:
  7. 执行的语句N+1
  8. 执行的语句N+2
  9. ...

 while的条件语句为真时,执行下面的语句1到语句N,当条件为假时,执行else下面的语句。


break语句 和 continue语句

这两个语句都是在循环中发挥作用的,用于对循环结构的操作

  • break 语句

 break 语句可以立即终止当前循环的执行,跳出当前所在的循环结构。 举个例子,假如你打算把课本复习10遍,当你复习第三遍时,突然旁边的手机对你使用了break语句,你便停止了循环的复习,开始执行循环复习之外的事情。

break语句的一般格式:

  1. while True
  2. 执行的语句1
  3. 执行的语句2
  4. break #break语句后面的语句就不再执行了,并跳出循环
  5. ...
  6. 执行的语句N

 上面的代码中,当循环里的语句执行到break语句时,循环就被中断了(就像你的复习一样被打断了),就开始执行while循环后的语句了。

  • continue 语句

 continue语句也是在循环中起作用,它会终止执行本次循环中剩下的代码,直接从下一次循环继续执行。同样举个例子,同样假如你要把课本复习10遍,你复习第三遍时,一阵风把你的书吹合上了,你忘记是第几页了,便只能从头开始看。这时,这阵风就相当于continue语句,结束了当前循环,但还会进行下一次循环。

continue语句的一般格式:

  1. while True:
  2. 执行的语句1
  3. 执行的语句2
  4. continue #continue语句后面的语句在这次循环不再执行,但在下次循环还会执行,并不会跳出循环
  5. ...
  6. 执行的语句N

 上面的代码中,当循环里的语句执行到continue语句时,这次循环就被中断了(就像风吹乱了你的课本),还会执行下一次的循环。


for循环

  • range()函数

 说到for循环,就必然要说到它的好兄弟range()函数,因为很多有for循环的地方都能用到它。所以我们先来讲讲range()函数。

功能:根据起始数字终止数字步长 来返回 可迭代对象 (在Python3中,Python2返回的是列表,这里不做深究) 。

格式:

  1. range(起始数字,终止数字,步长)

 起始数字:开始计数的数字;默认为0,所以该项在写时可省略,例如 range(10) 等价于 range(0,10)

 终止数字:终止计算的数字,但不包含该项,例如 range(0,3) 依次返回 0,1,2,并不包含 3 ;无默认值,所以该项必填;

 步长:就是连续返回的两个数字间隔大小,例如 range(0,10,3) 依次返回 0,3,6,9,每两个相邻数字之间间隔大小为3;其次,步长可为负数,用法和正数差不多,例如 range(10,0,-3) 依次返回 10,7,4,1,相邻两个数字相差 -3


  • for 循环

 for循环想必学过C语言的同学是再了解不过了,但是Python中for循环的语法相对于C语言中有了较大不同,所以千万不要把两者弄混了哦!

流程图
在这里插入图片描述

格式:

  1. for 变量名 in 可迭代对象名:
  2. 执行的语句1
  3. 执行的语句2
  4. ...
  5. 执行的语句N

 此处我们只讨论for循环与range函数有关的用法;

例子:

我们用for循环来改写上面 1100 的累加

  1. sum = 0
  2. i = 1
  3. for i in range(1,101,1):
  4. sum = sum + i
  5. print(sum)

for…else 结构

 这个和 while…else结构 一样不常用,大致格式为

  1. for 变量名 in 可迭代对象名:
  2. 执行的语句1
  3. 执行的语句2
  4. ...
  5. 执行的语句N
  6. else:
  7. 执行的语句N+1
  8. 执行的语句N+2
  9. ...

 它会在上面的for循环执行完之后,执行else下面的语句,和 while…else结构差不多。


到这里,本节就结束了,感兴趣的小伙伴可以看一下下面的题目哦!

题目

请用Python实现并计算 1x2x3+3x4x5+…+99x100x101的结果并输出。

答案:
while循环版:

  1. sum = 0
  2. i=1
  3. while i<=99:
  4. sum = sum + i*(i+1)*(i+2)
  5. i = i + 2
  6. print(sum)

for循环版:

  1. sum = 0
  2. i=1
  3. for i in range(1,101,2):
  4. sum = sum + i*(i+1)*(i+2)
  5. print(sum)

本节到这里就结束了,欢迎观看下期哦!

发表评论

表情:
评论列表 (有 0 条评论,212人围观)

还没有评论,来说两句吧...

相关阅读