Python基础(6)循环(1)while

1 程序的三大流程

在程序开发中,一共有三种流程方式:
顺序 —— 从上向下,顺序执行代码
分支 —— 根据条件判断,决定执行代码的分支
循环 —— 让特定代码 重复 执行
在这里插入图片描述

2.while 循环基本使用

初始条件设置 —— 通常是重复执行的 计数器

while 条件(判断 计数器 是否达到 目标次数):    
	条件满足时,做的事情1    
	条件满足时,做的事情2    
	条件满足时,做的事情3    
	处理条件(计数器 + 1)

需求:打印 5 遍 Hello Python

i = 1
while i<=5:
    print('Hello Python!')
    i+=1   

Hello Python!
Hello Python!
Hello Python!
Hello Python!
Hello Python!

3 Python中计数规则

常见的计数方法有两种,可以分别称为:

  • 自然计数法(从 1 开始)—— 更符合人类的习惯
  • 程序计数法(从 0 开始)—— 几乎所有的程序语言都选择从 0 开始计数

因此,大家在编写程序时,应该尽量养成习惯:除非需求的特殊要求,否则 循环 的计数都从 0 开始

4 循环计数

在程序开发中,通常会遇到 利用循环 重复计算 的需求
遇到这种需求,可以:

  • 在 while 上方定义一个变量,用于 存放最终计算结果
  • 在循环体内部,每次循环都用 最新的计算结果,更新 之前定义的变量需求
    示例:
    需求
    计算 0 ~ 100 之间所有数字的累计求和结果
i=0
sum1 =0
while i<=100:
    sum1+=i
    i+=1
print('0-100的累计求和结果为:%d'%sum1)

0-100的累计求和结果为:5050

需求进阶:
1.计算 0 ~ 100 之间 所有 偶数 的累计求和结果
2.不要根据人的判断,使用程序来判断是否是偶数

sum1 =0
i=0
while i<=100:
    if i%2==0:
        sum1 += i
    i += 1
print('0 ~ 100 之间所有偶数的累计求和结果:%d'%sum1)

0 ~ 100 之间所有偶数的累计求和结果:2550

5 break 和 continue

break 和 continue 是专门在循环中使用的关键字
break 某一条件满足时退出循环,不再执行后续重复的代码
continue 某一条件满足时,不执行后续重复的代码
在这里插入图片描述

5.1 break

在循环过程中,如果某一个条件满足后,不再希望循环继续执行,可以使用 break 退出循环

i = 0
while i < 10:
# break 某一条件满足时,退出循环,不再执行后续重复的代码
# i == 3
    if i == 3:
        break
    print(i)
    i += 1
print("over")

0
1
2
over

5.2 continue

  • 在循环过程中,如果 某一个条件满足后不希望执行循环代码,但是又不希望退出循环,可以使用continue
  • 也就是:在整个循环中,只有某些条件,不需要执行循环代码,而其他条件都需要执行
i = 0
while i < 5:
# 当 i == 7 时,不希望执行需要重复执行的代码
    if i == 4:
# 在使用 continue 之前,同样应该修改计数器
# 否则会出现死循环
        i+= 1
        continue
# 重复执行的代码
    print(i)
    i += 1

0
1
2
3

6 循环嵌套

  • while 嵌套就是: while 里面还有 while
while 条件 1:    
	条件满足时,做的事情1
	while 条件 2:        
		条件满足时,做的事情1
		处理条件 2
	处理条件 1

循环嵌套示例:九九乘法表

需求
输出乘法表

'''
需求:
在控制台连续输出3行  * ,每一行星号的数量依次递增
'''
row = 1
while row<=3:
    print('*'*row)
    row+=1
'''
需求:
对  print  函数的使用做一个增强
在默认情况下, print  函数输出内容之后,会自动在内容末尾增加换行
如果不希望末尾增加换行,可以在  print  函数输出内容的后面增加  , end=""
其中  ""  中间可以指定  print  函数输出内容之后,继续希望显示的内容语法格式如下:
# 向控制台输出内容结束之后,不会换行
print("*", end="")
# 单纯的换行print("")
'''
i=1
while i<=9:
    j=1
    while j<=i:
        print('%d*%d=%d'%(i,j,i*j),end='\t')
        j+=1
    print('')
    i+=1

输出如下:

*
**
***
1*1=1	
2*1=2	2*2=4	
3*1=3	3*2=6	3*3=9	
4*1=4	4*2=8	4*3=12	4*4=16	
5*1=5	5*2=10	5*3=15	5*4=20	5*5=25	
6*1=6	6*2=12	6*3=18	6*4=24	6*5=30	6*6=36	
7*1=7	7*2=14	7*3=21	7*4=28	7*5=35	7*6=42	7*7=49	
8*1=8	8*2=16	8*3=24	8*4=32	8*5=40	8*6=48	8*7=56	8*8=64	
9*1=9	9*2=18	9*3=27	9*4=36	9*5=45	9*6=54	9*7=63	9*8=72	9*9=81	

Process finished with exit code 0

字符串的转义字符

义字符 描述
\ 反斜杠符号
单引号
" 双引号
\n 换行
\t 横向制表符
\r 回车
发布了27 篇原创文章 · 获赞 5 · 访问量 494

猜你喜欢

转载自blog.csdn.net/qq_43685242/article/details/104687338