python基础入门之循环

导语

  • 这一章我个人觉得是非常重要,反正我写爬虫的时候主要代码就是循环,在开发项目的时候,经常会使用,反正是一个知识点,必须会熟练使用的。

循环的分类

  • while — 循环控制灵活,功能性强,好比是机关枪。
  • for — 条件限制较多,遍历功能强,好比是手枪。

while的语法

i = 0
while i < 5:
	print('循环一次后,i加1')
	i += 1
print('循环结束')
  • 我们发现,这种控制性语句,后面都是跟一个限定条件,其实就是判断真假控制循环次数,我们说过,程序由上至下执行,当while语句执行完后,再执行后面的代码。
  • 应⽤:计算1-100累加和
i = 1
result = 0
while i <= 100:
	result += i
	i += 1
print(result)
  • 举一反三:还可以计算偶数和,奇数和,素数和,其实就是判断一下i的数值,如果是偶数和,那么条件判断和2取余数为0就可以了。
i = 1
result = 0
while i <= 100:
	if i % 2 == 0:
		result += i
	i += 1
print(result)
  • 上面是在while后面条件满足后才停止循环,但是在需求中,有时会出现特定情况,从而退出循环,这个时候就要用到break和continue。
i = 1
while i <= 5:
	if i == 4:
		print(f'吃饱了不吃了')
		break
	print(f'吃了第{i}个苹果')
	i += 1
  • 当条件满足后break执行,直接终止后面的语句跳出循环,不再执行循环语句,记住是终止循环不是终止整个程序。
i = 1
while i <= 5:
	if i == 3:
		print(f'⼤⾍⼦,第{i}个不吃了')
		# 在continue之前⼀定要修改计数器,否则会陷⼊死循环
		i += 1
		continue
	print(f'吃了第{i}个苹果')
	i += 1
  • 自己执行两段代码结果,很显然就会发现,continue只是终止本次循环,整个循环还是会继续执行。

while循环嵌套

  • 不讲,就是套娃逻辑,子循环完后再执行主循环一次,建议小白先码好上面的来,学好了可以自己试着码出九九乘法表。

for循环

str1 = 'python'
for i in str1:
	print(i)
  • 遍历字符串,同样for循环一样可以加break和continue,用法一样。
str1 = 'python'
for i in str1:
	if i == 'o':
		print('遇到o不打印')
		break
	print(i)
str1 = 'python'
for i in str1:
	if i == 'o':
		print('遇到o不打印')
		continue
	print(i)
  • 小知识:while和for循环都可以配合else使用,else下⽅缩进的代码含义:当循环正常结束后执⾏的代码,break终⽌循环不会执⾏else下⽅缩进的代码,continue对else没有影响,循环结束后继续执行else代码,意识就是,else也是循环语句的一部分,同生共死的关系。