一、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

count = 0
while (count < 9):
print(count,"The count is:"),count
count = count + 1
print('Good bye!') 0 The count is:
1 The count is:
2 The count is:
3 The count is:
4 The count is:
5 The count is:
6 The count is:
7 The count is:
8 The count is:
Good bye!

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

count = 0
while (count < 9):
count = count + 1
if count%2 > 0: # 非双数时跳过输出
continue
print(count)
print('Good bye!') count = 0
while (count < 9):
count = count + 1
if count > 4: # 当count大于4跳出循环.
break
print(count)
print('Good bye!')

无限循环

var = 1
while var == 1:
num = input('Enter a number ')
print("You enterd:",num)
print("Good bye!") You enterd:
Enter a number
You enterd:
Enter a number
You enterd:
Enter a number
You enterd:
Enter a number
You enterd:
Enter a number

循环使用else语句

count = 0
while count < 5:
print (count, " is less than 5")
count = count + 1
else:
print (count, " is not less than 5") 0 is less than 5
1 is less than 5
2 is less than 5
3 is less than 5
4 is less than 5
5 is not less than 5

简单语句组

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

三、For循环

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

for iterating_var  in  sequence:
statements(s)

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

循环使用else语句

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

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

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

Break执行流程图

Continue执行流程图

代码执行过程

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

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

Example

While中使用Break

n = 5
while n > 0:
n -= 1
if n == 2:
break
print(n)
print('循环结束')
4
3
循环结束

Whie中使用continue

n = 5
while n > 0:
n -= 1
if n == 2:
continue
print(n)
print('循环结束')
4
3
1
0
循环结束

for 循环使用break和continue

for i in 'YouMen':
if i == 'M':
break
print('当前字母为:',i)
print('----------------------')
for i in 'YouMen':
if i == 'M':
continue
print('当前字母为:',i) 当前字母为: Y
当前字母为: o
当前字母为: u
----------------------
当前字母为: Y
当前字母为: o
当前字母为: u
当前字母为: e
当前字母为: n

五、Python Pass语句

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

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

最小的类

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

    pass

# Example
for letter in 'python':
if letter == 'h':
pass
print ('这是pass块')
print("当前字母:",letter)
print("Good bye!") # 上面实例运行结果为:
当前字母: p
当前字母: y
当前字母: t
这是pass块
当前字母: h
当前字母: o
当前字母: n
Good bye!

Exapmle最小的类

class MyEmptyClass:
pass

Example1 打印一个质数

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

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

count = 0
for i in range(0,1000,7):
print(i)
count += 1
if count >= 20:
break

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

打印等腰三角形

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

打印空心菱形

rows = 10
for i in range(rows):
for j in range(rows - i):
print(" ", end=" ")
j += 1
for k in range(2 * i - 1):
if k == 0 or k == 2 * i - 2:
print("*", end=" ")
else:
print(" ", end=" ")
k += 1
print ("\n")
i += 1
# 菱形的下半部分
for i in range(rows):
for j in range(i):
# (1,rows-i)
print(" ", end=" ")
j += 1
for k in range(2 * (rows - i) - 1):
if k == 0 or k == 2 * (rows - i) - 2:
print("*", end=" ")
else:
print(" ", end=" ")
k += 1
print("\n")
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. 常用设计模式的实现,以及Netty中的设计模式

    1.观察者模式 有两个角色,观察者和被观察者.当被观察者发出消息后,注册了的观察者会收到其消息,而没有注册的观察者就不会收到. //定义观察者接口 interface Observer{ //通知观察 ...

  2. oracle常用字符函数

    字符函数: concat:(字符连接函数) --字符连接 select concat('con','cat') from dual; select 'co'||'nc'||'at' from dual ...

  3. Spring Cloud Alibaba系列(二)nacos作为服务配置中心

    Nacos 提供用于存储配置和其他元数据的 key/value 存储,为分布式系统中的外部化配置提供服务器端和客户端支持.使用 Spring Cloud Alibaba Nacos Config,您可 ...

  4. 操作系统实验——PV操作实现生产者消费者模型

    操作系统PV操作之--生产者消费者模型 个人博客主页 参考资料: Java实现PV操作 | 生产者与消费者 浙大公开课 在操作系统的多进程.多线程操作中经常会有因为同步.互斥等等问题引发出的一系列问题 ...

  5. Mybatis使用ResultMap

    解决字段名和属性名不一致的问题 - 新建数据库表的字段-这里就不贴上了 在下面链接有 https://www.cnblogs.com/rzkwz/p/12853899.html 设置实体类和数据库字段 ...

  6. opencv-12-高斯滤波-双边滤波(附C++代码实现)

    开始之前 这几天由于自己的原因没有写, 一个是因为自己懒了, 一个是感觉这里遇到点问题不想往下写了, 我们先努力结束这个章节吧, 之前介绍了比较常用而且比较好理解的均值和中值滤波, 但是呢,在例程Sm ...

  7. 一阶RC高通滤波器详解(仿真+matlab+C语言实现)

    文章目录 预备知识 关于电容 HPF的推导 simulink 仿真 simulink 运行结果 matlab 实现 matlab 运行结果 C语言实现 如果本文帮到了你,帮忙点个赞: 如果本文帮到了你 ...

  8. burpsuite抓包无法识别POST参数问题

    直接拿一道bugkuctf中的题目进行测试 这道题目就是用POST方法上传what=flag 我们利用burpsuite进制抓包 需要更改三个部分,这样就可以解决burpsuite无法识别POST参数 ...

  9. 通过PAML中的CODEML模块计算dnds的过程以及踩坑

    最近帮女朋友做毕业设计的时候用到了 PAML这个软件的codeml功能,发现网上相关的资料很少,于是把自己踩的一些坑分享一下,希望能帮到其他有相同困难的人 一.下载与安装 PAML软件下载地址 htt ...

  10. css3 文字处理

    text-overflow:ellipsis;超出的文字显示...前提是该盒子必须有overflow:hidden;属性 text-shadow 文字阴影 direction:控制文字方向,值有dow ...