分享

第五关笔记

 a倪伟峰 2019-06-22

第5关 for循环和while循环-消灭该死的重复(上)

课程目标

  1. 掌握for...in...循环的格式与特点,了解其数据传递

  1. 熟练掌握for...in...与range()函数的结合使用

  1. 掌握while循环的格式与特点

  1. 区别for...in...循环与while循环

课程难点

  1. range()函数各个参数的含义

  1. for...in...循环与while循环的变量更迭

  1. while语句如何避免死循环

课程重要内容重现

一、range()函数

  1. 使用range()函数,可以生成一个整数序列。

  1. 参数的意义:

  • range(n)与range(0,n)一样,都是生成一个从0到n-1的整数序列

  • range(m,n),n>m,生成从m到n-1的序列。取头不取尾。

  • range(m,n,p),n>m,生成m到n-1中间隔为p的整数序列。例如range(3,30,5)的意思就是从3开始每间隔5取一个数,直到29,结果为[3,8,13,18,23,28]。(只有两个参数时,p默认为1。)

二、for...in...循环

  1. i是变量名,可以根据需要取。

  1. 遍历:逐一访问全部数据。

  1. 用于处理已知循环次数或循环固定次数的问题。

  1. 格式:

  • for...in...语句最后需要接冒号

  • for...in...语句内部语句需要缩进,会被重复执行

for i in [1,2,3,4,5]:
   print(i)
#显示结果为:
#1
#2
#3
#4
#5
for i in '吴承恩':
    print(i)
#显示结果为:
#吴
#承
#恩
  1. in后可接列表、字典和字符串,但不允许接整数、浮点数。

  • 列表里的元素值依次赋值给变量i,i最终的值取决于最新一次的赋值。

  • 若是字典,则赋值给变量的是字典中的key,而不是value。

  • 对于字符串而言,会依次输出字符。

d = {'小明':'醋','小红':'油','小白':'盐','小张':'米'}
for i in d:
    print(i)
#显示结果为:
#小明
#小红
#小白
#小张

d = {'小明':'醋','小红':'油','小白':'盐','小张':'米'}
for i in d:
    print(d[i])
#显示结果为:
#醋
#油
#盐
#米
  1. range()函数配合使用

可以用for...in...语句遍历range()函数生成的整数序列并打印。

for i in range(13,17):
    print(i)
#显示结果为:
#13
#14
#15
#16

for i in range(n):,表示循环n次。如下面例题中i=0,i=1,i=2时都执行一次语句内的代码,也就是3次。

for i in range(3):
    print('我很棒')
#结果显示为:
#我很棒
#我很棒
#我很棒

三、while循环

  1. 与if条件判断类似,while后条件若满足,会进入语句内部循环直至条件不再满足或内部打断。

  1. 用于处理未知循环次数或循环固定次数的问题。

  1. 格式

  • 在while循环前要定义变量

  • 为避免陷入死循环,在循环内必须更新变量,如自加:a=a 1,也可以写成a =1。

  • 循环体内部需要缩进!

a = 0
#非格式要求,但在while循环前必须要定义变量

while a < 5:
a = a 1
print(a)
#显示结果为:(不显示0是因为a先自加再输出,此时赋值已更新)
#1
#2
#3
#4
#5
a = 0
e循环前必须要定义变量
while a < 5:
a = a 1
print(a)
#显示结果为:(因为print()在循环外,只输出最终a的赋值)
#5

四、*pop()函数

用于移除列表中的一个元素(默认最后一个元素),并且返回该元素的值。

可以指定移除元素,列表使用偏移量为参数,字典使用key作为参数。例如:students.pop(0)是删除并提取students这个列表中偏移量为0的元素并返回这个元素。

students = ['小明','小红','小刚']
student1 = students.pop(0) 
#运用pop()函数,同时完成第一个元素的提取和删除。并将pop()的返回值存在student1这个变量中。
students.append(student1) 
#将移除的student1安排到最后一个座位。
print(students)
#显示结果为:
#['小红','小刚','小明']

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多