昨天讲了if,基本语法还有while与for还没有讲,今天就一起都说了好了。
while 和 for都是基本的循环语句,用法也都是很简单的

while语句

只要while的判别式是真,就会一直循环,这个判别式可以是True、1、0、运算表达式等等,他的循环过程如图:

Created with Raphaël 2.2.0 while 条件真? 程序内容 while 结束 yes no

(…这个while结束怎么放到下面TAT
第一次用这个流程图,长见识了,可能画得不太好蛤)
举一个非常简单的例子:

i=0
while i<10:
	i+=1
	print(i)

除了这种,while还可以像结合列表做删除查找等等等等,这一点以后会在用到的时候再说起,(最后的最后是要做合集的)

1.break

break用于立刻停止循环

i=0
while i<10:
	i+=1
	print(i)
	if(i>5):
		break

输出如图:

python用while循环绘制图形 python中while循环图片_python用while循环绘制图形

2.continue

continue用于结束本次循环

i=0
while i<10:
	i+=1
	if i%2:
		continue
	print(i)

输出如图:

python用while循环绘制图形 python中while循环图片_python_02


这里i%2要提一下:当i是奇数的时候, i%2 == 1,所以if判定就是1,就会执行if语句里的内容

以上就是while语句的最基本的用法,以后再讲其他内容涉及到while的时候会再拿出来说。

for语句

先举一个for循环的例子:

for i in 'abcd':
	print(i)

输出如图:

python用while循环绘制图形 python中while循环图片_迭代_03


也即:for循环会依次获取集合中的元素,每次循环接收一个,放在"i"里,这里尤其要提到的一句就是,

for循环里in的返回值,和之前的成员运算符in是不一样的

二者不是同一种符号,单独的in是固定的语法,而for语句用到的in,是一个运算符号。单独的in语句,返回值是True or False,for中的in返回的则是集合里的一个个元素。

for循环的循环过程如图(好像跟while差不多,如果我这里的流程图不对请私信我,我将第一时间改正,谢谢!)

Created with Raphaël 2.2.0 for 有下个元素? 程序内容 for 结束 yes no


和while语句一样,for循环也可以跟break与continue一起用

1.break

跟while是一样的,break用于立刻停止循环

over="程序检测到字符一的时候结束:0123"
for i in over:
	if i=='1':
		print(i)
		break

输出如下:

python用while循环绘制图形 python中while循环图片_for循环_04

2.continue

和while也一样,continue用于结束本次循环

skip="0123"#程序检测到字符1的时候跳过
for i in skip:
	if i=='1':
		continue
	print(i)

输出如图:

python用while循环绘制图形 python中while循环图片_迭代_05


以上就是for循环最基本的内容,其实还有很多种用法但是因为前面没有提到过相关的知识点,原计划是想把列表元组字典之类的放在后面讲的,结果就导致在这里很多东西没法讲啊哈哈,看来计划要改一下了:(

所以!在介绍完while 和 for的最基本用法以后,现在要讲到一个

range()函数

range()函数会生成一个可以迭代1的对象,它有三种写法

  1. range(stop)
  2. range(start,stop)
  3. range(start,stop,step)

start是初始数字

stop是结束数字,如果只有stop一个参数的话,默认start为0

strp是相邻数字的差(步长)

这三个参数都必须是整型

如图:

python用while循环绘制图形 python中while循环图片_编程语言_06


所以,之前用while做的输出0-9内偶数的程序,也可以用for语句来写

for i in range(1,11):
	if i%2:
		continue
	print(i)

今天就到这了,今天主要讲的就是while和for的最基本用法

  1. while语句
  2. for语句
  3. break和continue在以上循环中的用法
  4. range()

每周二都是满课:(只能抽空在课余时间把它写完。这几天晚上睡觉前在思考这个系列的时候发现,每次都是讲完balabal以后就完事了,为了象征性地巩固一下,似乎还需要象征性地留一个超级简单的小任务哈,如题:

用循环语句统计如下字符串的汉字、字母、数字、符号的数量并分别输出:
text=‘北京时间4月21日凌晨2时30分,WTI 美油5月份合约收跌至-37美元,跌幅305.97%,创造历史!’

  1. 迭代是重复反馈过程的活动,其目的通常是为了逼近所需目标或结果。每一次对过程的重复称为一次"迭代",而每一次迭代得到的结果会作为下一次迭代的初始值。 ↩︎