一、Python循环语句

程序一般情况下是按照顺序执行的

编程语言提供了各种控制结构,允许更复杂的执行路径

Python中的循环语句有for和while但没有do while

循环语句允许我们执行一个语句或语句组多次,下面是大多数编程语言中循环语句的一般形式:

Python提供了for循环和while循环(在Python中没有do while循环)

循环类型 描述
[while 循环] "Python WHILE 循环") 在给定的判断条件为 true 时执行循环体,否则退出循环体。
[for 循环] " Python FOR 循环") 重复执行语句
[嵌套循环]"Python 循环全套") 你可以在while循环体中嵌套for循环

二、 Python While循环语句

Python编程中while语句用于循环执行程序,即在某条件下,循环执行某段程序,以处理需要重复处理的相同任务,基本形式如下:

Gif演示Python while语句执行过程

复杂一点

Example1

  1. count = 0
  2. while (count < 9):
  3. print(count,"The count is:"),count
  4. count = count + 1
  5. print('Good bye!')
  6. 0 The count is:
  7. 1 The count is:
  8. 2 The count is:
  9. 3 The count is:
  10. 4 The count is:
  11. 5 The count is:
  12. 6 The count is:
  13. 7 The count is:
  14. 8 The count is:
  15. Good bye!

While 语句时还有另外两个重要的命令continue,breadk来跳过循环,continue用于跳过该次循环,break则用于退出循环,此外“判断条件”还可以是个常值,表示循环必定成立,具体用法如下:

  1. count = 0
  2. while (count < 9):
  3. count = count + 1
  4. if count%2 > 0: # 非双数时跳过输出
  5. continue
  6. print(count)
  7. print('Good bye!')
  8. count = 0
  9. while (count < 9):
  10. count = count + 1
  11. if count > 4: # 当count大于4跳出循环.
  12. break
  13. print(count)
  14. print('Good bye!')

无限循环

  1. var = 1
  2. while var == 1:
  3. num = input('Enter a number ')
  4. print("You enterd:",num)
  5. print("Good bye!")
  6. You enterd:
  7. Enter a number
  8. You enterd:
  9. Enter a number
  10. You enterd:
  11. Enter a number
  12. You enterd:
  13. Enter a number
  14. You enterd:
  15. Enter a number

循环使用else语句

  1. count = 0
  2. while count < 5:
  3. print (count, " is less than 5")
  4. count = count + 1
  5. else:
  6. print (count, " is not less than 5")
  7. 0 is less than 5
  8. 1 is less than 5
  9. 2 is less than 5
  10. 3 is less than 5
  11. 4 is less than 5
  12. 5 is not less than 5

简单语句组

  1. flag = 1
  2. while (flag): print ('Given flag is really true!')
  3. print("Good bye!")

三、For循环

Python for循环可以便利任何序列的项目,如一个列表或者一个字符串

  1. for iterating_var in sequence:
  2. statements(s)

  1. for letter in 'python':
  2. print('当前字母:',letter)
  3. fruits = ['banana','apple','mango']
  4. for fruits in fruits:
  5. print ('当前水果:',fruits)
  6. print("Good bye!")
  7. # 当前实例运行结果为:
  8. 当前字母: p
  9. 当前字母: y
  10. 当前字母: t
  11. 当前字母: h
  12. 当前字母: o
  13. 当前字母: n
  14. 当前水果: banana
  15. 当前水果: apple
  16. 当前水果: mango
  17. Good bye!
3.1 通过序列索引迭代**
  1. fruits = ['banana','apple','mango']
  2. for index in range(len(fruits)):
  3. print ('当前水果:',fruits[index])
  4. print("Good bye!")
  5. 当前水果: banana
  6. 当前水果: apple
  7. 当前水果: mango
  8. Good bye!
  9. # 以上实例我们使用了内置函数len()和range()函数len()返回列表的长度,即元素的个数,range返回一个序列的数.

循环使用else语句

在 python 中,for … else 表示这样的意思,for 中的语句和普通的没有区别,else 中的语句会在循环正常执行完(即 for 不是通过 break 跳出而中断的)的情况下执行,while … else 也是一样。

3.2 Range()函数
  • 如果你需要遍历数字序列,可以使用内置range()函数,他会生成数列,例如
  1. for i in range(5):
  2. print(i)
  3. # 你也可以使用range指定区间的值:
  4. for i in range(5,9):
  5. print(i)
  6. 5
  7. 6
  8. 7
  9. 8
  10. # 也可以使range以指定数字开始并指定不同的增量(甚至可以是负数,有时这也叫做'步长'):
  11. for i in range(0,10,2):
  12. print(i)
  13. 0
  14. 2
  15. 4
  16. 6
  17. 8
  18. # 也可以结合range()和len()函数遍历一个序列的索引,如下:
  19. a = ['Google','Baidu','360','JinDong']
  20. for i in range(len(a)):
  21. print(i,a[i])
  22. 0 Google
  23. 1 Baidu
  24. 2 360
  25. 3 JinDong
  26. # 还可以使用range()函数来创建一个列表
  27. a=list(range(5))
  28. print(a)
  29. [0, 1, 2, 3, 4]

四、Break和continue语句及循环中的else子句

Break执行流程图

Continue执行流程图

代码执行过程

Break语句可以跳出for和while的循环体,如果你从for或while循环中终止,任何对应的else块将不执行

Continue语句被用来告诉Python跳出当前循环块中的剩余语句,然后继续下一轮循环

Example

While中使用Break

  1. n = 5
  2. while n > 0:
  3. n -= 1
  4. if n == 2:
  5. break
  6. print(n)
  7. print('循环结束')
  8. 4
  9. 3
  10. 循环结束

Whie中使用continue

  1. n = 5
  2. while n > 0:
  3. n -= 1
  4. if n == 2:
  5. continue
  6. print(n)
  7. print('循环结束')
  8. 4
  9. 3
  10. 1
  11. 0
  12. 循环结束

for 循环使用break和continue

  1. for i in 'YouMen':
  2. if i == 'M':
  3. break
  4. print('当前字母为:',i)
  5. print('----------------------')
  6. for i in 'YouMen':
  7. if i == 'M':
  8. continue
  9. print('当前字母为:',i)
  10. 当前字母为: Y
  11. 当前字母为: o
  12. 当前字母为: u
  13. ----------------------
  14. 当前字母为: Y
  15. 当前字母为: o
  16. 当前字母为: u
  17. 当前字母为: e
  18. 当前字母为: n

五、Python Pass语句

Python pass是空语句,是为了保持程序结构的完整性

Pass不做任何事情,一般用作占位语句

最小的类

Python语言pass语句语法格式如下

  1. pass
  2. # Example
  3. for letter in 'python':
  4. if letter == 'h':
  5. pass
  6. print ('这是pass块')
  7. print("当前字母:",letter)
  8. print("Good bye!")
  9. # 上面实例运行结果为:
  10. 当前字母: p
  11. 当前字母: y
  12. 当前字母: t
  13. 这是pass
  14. 当前字母: h
  15. 当前字母: o
  16. 当前字母: n
  17. Good bye!

Exapmle最小的类

  1. class MyEmptyClass:
  2. pass

Example1 打印一个质数

  1. for num in range(10,20):
  2. for i in range(2,num):
  3. if num%i == 0:
  4. j=num/i
  5. print("%d 等于%d * %d" % (num,i,j))
  6. break
  7. else:
  8. print(num)
  9. 10 等于2 * 5
  10. 11
  11. 12 等于2 * 6
  12. 13
  13. 14 等于2 * 7
  14. 15 等于3 * 5
  15. 16 等于2 * 8
  16. 17
  17. 18 等于2 * 9
  18. 19

Example2 计算1000以内被7整除的前20个数

  1. count = 0
  2. for i in range(0,1000,7):
  3. print(i)
  4. count += 1
  5. if count >= 20:
  6. break

Example3 给定一个不超过5位的正整数,判断其有几位,依次打印个数,十位数,百位数,千位数.万位数

打印等腰三角形

  1. rows = 10
  2. for i in range(0, rows):
  3. for k in range(0, rows - i):
  4. print ("*",end="") #注意这里的",",一定不能省略,可以起到不换行的作用
  5. k += 1
  6. i += 1
  7. print ()

打印空心菱形

  1. rows = 10
  2. for i in range(rows):
  3. for j in range(rows - i):
  4. print(" ", end=" ")
  5. j += 1
  6. for k in range(2 * i - 1):
  7. if k == 0 or k == 2 * i - 2:
  8. print("*", end=" ")
  9. else:
  10. print(" ", end=" ")
  11. k += 1
  12. print ("\n")
  13. i += 1
  14. # 菱形的下半部分
  15. for i in range(rows):
  16. for j in range(i):
  17. # (1,rows-i)
  18. print(" ", end=" ")
  19. j += 1
  20. for k in range(2 * (rows - i) - 1):
  21. if k == 0 or k == 2 * (rows - i) - 2:
  22. print("*", end=" ")
  23. else:
  24. print(" ", end=" ")
  25. k += 1
  26. print("\n")
  27. i += 1

05 . Python入门值循环语句的更多相关文章

  1. python入门10 循环语句

    两种循环: 1 for in 2 while #coding:utf-8 #/usr/bin/python """ 2018-11-03 dinghanhua 循环语句 ...

  2. Python数据结构与循环语句

    # Python数据结构与循环语句:   首先编程是一项技能,类似跑步,期初不必在意细节,能使用起来就行,等学的游刃有余了再回过头来关注细节问题也不迟.  关于买书: 学会python之后,才需要买书 ...

  3. 【python】Python3 循环语句

    [python]几种常见的循环 注意:如果涉及到程序中print语句中含有%d,%s,那么要在脚本最开始写语句:#coding=utf-8,才能够正常输出想要的数字或者字符串. Python3 循环语 ...

  4. Python趣味入门5:循环语句while

    跟着小牛叔,找准正确编程入门姿势,每天只要阅读10分钟. 任何语言都有循环语句,在Python里循环更是变化无穷,有基本的循环,有循环else语句,引伸出来的还有迭代器.推导式,咱们先学习最简单的一种 ...

  5. 详解Python中的循环语句的用法

    一.简介 Python的条件和循环语句,决定了程序的控制流程,体现结构的多样性.须重要理解,if.while.for以及与它们相搭配的 else. elif.break.continue和pass语句 ...

  6. Swift入门篇-循环语句

    今天早上一起来所有新闻都是报道荷兰5-1战胜西班牙,我一看没有搞错吧,顿时想都如果中国队vs荷兰队也不至于会输的怎么惨吧,难道是荷兰队开挂了,于是我看了一下昨天比赛的视频直播,还真是新闻报道的那样,顿 ...

  7. Python 安装、循环语句、数据类型(一)

    一.关于版本的选择 Should i use Python 2 or Python 3 for my development activity?转载自Python官网 Short version: P ...

  8. Python语言的循环语句、迭代器与生成器、函数学习

    while循环语句 无限循环 我们可以通过设置条件表达式永远不为false来实现无限循环,实例如下: for语句 Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串 Python ...

  9. python操作符及其循环语句(非常全)

    //2018.10.14 1. Windows + R可以直接进行运行cmd 2. Random.randint(a,b):产生a-b的任意一个整数,在IDLE里面运行时需要注意在前面写好调用impo ...

随机推荐

  1. python-圆周率的计算【random库的应用】

    圆周率的计算 ‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪ ...

  2. P5343 【XR-1】分块(dp矩阵加速)

    \(大意是用数组a里的数字,组成一个序列,使得序列和为n的方案种数\)传送门 \(先考虑dp.\) \(但是不能直接用背包转移,因为是序列,要考虑顺序.\) \(所以,为了去重,我们令dp[i][j] ...

  3. C. Journey bfs 拓扑排序+dp

    C. Journey 补今天早训 这个是一个dp,开始我以为是一个图论,然后就写了一个dij和网络流,然后mle了,不过我觉得如果空间开的足够的,应该也是可以过的. 然后看了题解说是一个dp,这个dp ...

  4. python 矢量数据转栅格数据

    from osgeo import gdal,osr,ogr#定义投影sr = osr.SpatialReference('LOCAL_CS["arbitrary"]')#在内存中 ...

  5. HBase Filter 过滤器之QualifierFilter详解

    前言:本文详细介绍了 HBase QualifierFilter 过滤器 Java&Shell API 的使用,并贴出了相关示例代码以供参考.QualifierFilter 基于列名进行过滤, ...

  6. 利用一个VI写入或读取另一个VI的控件值

    利用一个VI写入或读取另一个VI的控件值(转载自浅浅的小草) 有一个VI,叫未命名1.vi.   还有一个vi,叫未命名2.vi     现在,我在 1.vi里要对2.vi的字符串控件进行写入.  可 ...

  7. java.sql.SQLException: The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized的报错问题

    url的问题 这个是根据使用的数据库版本不同而出现的错误,mysql8.0以上版本在使用URL时如果使用的语句是 url=jdbc:mysql://localhost:3306/book 是会报错的, ...

  8. 关于 Blob

    博客地址:https://ainyi.com/88 对于 Blob,前端开发中可能比较少遇到:数据库中可使用 Blob 概念,例如 Mysql 存储二进制数据的类型就是 Blob,也就是说图片可存储于 ...

  9. Vue中import用法

    1. 引入第三方插件 第三方常用插件参考https://blog.csdn.net/vbirdbest/article/details/86527886 2. 导入 css 文件 import 'iv ...

  10. ReactNavigation中如何实现页面跳转

    一.ReactNavigation中如何实现页面跳转 因为每个屏幕组件(具有路由地址的组件)都是由App根组件自动创建并挂载的,App组件 在创建屏幕组件时,会自动传递进来一个props:   nav ...