5 循环

循环

程序执行的三大流程
  • 在程序开发中,一共有三种流程方式
    • 顺序 – 从上向下,顺序执行代码
    • 分支 – 根据条件判断,决定执行代码
    • 循环 – 让特定代码重复执行
while循环
  • 循环的作用就是让指定的代码重复执行
  • while 循环最常用的应用场景就是让执行的代码按照指定的次数重复执行
while基本语法
初始条件设置——通常是重复执行的计数器
while 条件(判断 计数器 是否达到 目标次数)
	条件满足时,做的事情1
	条件满足时,做的事情2
	条件满足时,做的事情3
	......
	
	处理条件(计数器 +1)

  • while 语句以及缩进部分是一个完整的代码块

第一个while循环

需求:

  • 打印 5hello world
i = 0   # 记录一个整数变量记录循环次数
while i<5:     # 开始循环
    print("hello world")    # 希望在循环被执行的代码
    i = i+1       # 处理计数器

死循环

由于忘记在循环内部修改循环的判断条件,导致循环持续执行,程序无法终止!

循环计算
  • 在程序开发中,通常会遇到利用循环重复技术的需求

遇到这种需求,可以:

  1. while 上方定义一个变量,用于存放最终计算结果
  2. 在循环体内部,每次循环都用最新的计算结果,更新之前定义的变量

需求:

  • 计算 0 ~ 100 之间所有数字的累积求和结果
i = 0   # 定义整数变量初始值
result = 0  # 定义结果变量
while i <= 100: # 开始循环
    result = (result + i)   # 每一次循环都让result和i的值相加重新赋值给result
    i = i + 1   # 处理计数器
print("0~100的和为: %d" % result)

需求进阶:

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

开发步骤

  1. 编写循环确认要计算的数字
  2. 添加结果变量,在循环内部处理计算结果
# 定义一个整数变量的初始值
i = 0
# 定义一个最终结果的变量
y = 0
# 开始循环
while i <= 100:
    # 判断是否为偶数
    if i % 2 == 0:
        # 如果是偶数时进行相加
        y += i
    # 处理计数器
    i += 1
# 打印最终计算结果
print("0~100之间的偶数和为:%d" % y)


result = 0
i = 0
while i <= 100:
    result += i
    i += 2
print("0~100之间的偶数和为:%d " % result)
break和continue

breakcontinue 是专门在循环中使用的关键字

  • break 某一条件满足,退出循环,不在执行循环体内重复的代码
  • continue 某一条件满足时,本次不执行循环体内重复的代码,直接进行下一轮循环

breakcontinue 只针对当前所在的循环体有效

i = 0
while i < 10:
    if i == 3:  # 当i=3时直接退出循环,执行循环之外的代码
        break
    print(i)
    i += 1
print("over")


i = 0
while i < 10:
    if i == 3:
        i += 1	# 在循环中如果使用continue关键字,要确认计数器是否修改,否则容易导致死循环
        continue 
    print(i)
    i += 1
print("over")

continue 只针对当前所在循环有效

循环嵌套

while 嵌套就是 while 里面还有 while

while 条件1:
	条件满足是,做的事情1
	条件满足是,做的事情2
	条件满足是,做的事情3
	......
	
	while 条件2:
		条件满足是,做的事情1
		条件满足是,做的事情2
		条件满足是,做的事情3
		......
		
	    处理条件2
	
	处理条件1

print函数的 end 用法

  • 在默认情况下,print 函数输出内容后,会自动在内容末尾增加换行
  • 如果不希望末尾增加换行,可以在 print 函数输出内容的后面增加 , end=""
  • 其中 "" 中间可以指定 print 函数输出内容之后,继续希望显示的内容

语法格式如下:

print("*", end="")
print("*")
输出结果为:**

print("*", end="123")
print("*")
数出的结果为:*123*

end="" 表示向控制台输出内容结束之后,不会换行

演练:

需求:

在控制台输出5行*,每一行的数量一次递增
*
**
***
****
*****
# 不使用循环嵌套
row = 1
while row <=5:
    print("*" * row)
    row += 1

# 使用循环嵌套
row = 1
while row <=5:
    col = 1
    while col <= row:
        print("*", end="")
        col += 1
    print("")
    row += 1

需求:

输出九九乘法表,格式如下:

1x1=1
1x2=2 	2x2=4
1x3=3 	2x3=6 	3x3=9
1x4=4 	2x4=8 	3x4=12 	4x4=16
1x5=5 	2x5=10 	3x5=15 	4x5=20 	5x5=25
1x6=6 	2x6=12 	3x6=18 	4x6=24 	5x6=30 	6x6=36
1x7=7 	2x7=14 	3x7=21 	4x7=28 	5x7=35 	6x7=42 	7x7=49
1x8=8 	2x8=16 	3x8=24 	4x8=32 	5x8=40 	6x8=48 	7x8=56 	8x8=64
1x9=9 	2x9=18 	3x9=27 	4x9=36 	5x9=45 	6x9=54 	7x9=63 	8x9=72 	9x9=81
row = 1
while row <=9:
    col =1
    while col <=row:
        print("%d x %d = %d" %(col,row,col * row), end="\t")
        col += 1
    print("")
    row += 1

字符串中的转义字符

  • \t 在控制台输出一个制表符,协助在输出文本时,垂直方向保持对齐

  • \n 在控制台输出一个换行符

制表符的功能是在不使用表格的情况下垂直方向按列对齐文本

转义字符描述
\\反斜杠符号
\’单引号
\"双引号
\n换行
\t制表符
\r回车
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值