python的迭代

好的,今天仔细想想,我昨天那篇文章好像讲的都是废话,因为现在还在学基础,讲网络爬虫好像不太合适,尽管只是讲一个大概。

 

好的,今天我们继续来学习python基础语法,python的迭代。在上上篇文章中,我们讲了for循环,然后我们提到了迭代这个概念,意思就是说从头数到尾,嗯,就这么简单。我们今天主要是要学习一下关于迭代的几个知识:

1、并行迭代:所谓并行迭代就是同时迭代两个序列。我们来看一下示例代码:

 name = ['Tom','Pony']
 number = ['111','123']
 for i in range(len(name)):
   print(name[i],' ',number[i])
#按回车,得到的结果是:
Tom   111
Pony   123

我们来解释一下这个代码的意思,前两句是什么意思,知道吧?没错,创建了两个序列。接下来就是用一个for循环来实现并行迭代,len(name)是指name这个序列的长度,range(len(name))就定义了i在这个长度的范围内,所以就有一个循环从0到name序列长度结束,不断地执行print语句,直到循环结束。所以你看到两个序列的元素交替输出。

2、函数zip:这个函数的主要作用在于将两个序列连接起来,这个连接不是说一个序列的最后一个数接上第二个序列的第一个数,而是将相对应的数连接起来,一个序列中的第几个元素和另一个序列的第几个元素相连接,我们来看一下示例代码:

name = ['Tom','Pony']
number = ['111','123']
list(zip(name,number))
#按回车,得到的结果是:[('Tom', '111'), ('Pony', '123')]

list(zip(range(10),range(100)))
#按回车,得到的结果是:[(0, 0), (1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (7, 7), (8, 8), (9, 9)]

我们来解释一下这两段代码:

先看第一段,同样是先创建两个序列,然后用zip函数将这两个序列连接起来,接着用list将连接起来的数据转化为一个列表,按回车就得到了结果。

接着来看第二段代码,第二段代码中,range(10)和range(100)分别表示从0到9,从0到99。我们可以看到,这两个序列的长度并不一致,当两个序列的长度不一致的时候,我们就以最短的那个序列为标准进行连接。

好的,今天的内容就讲到这里啦~

 

(文章图片若有侵权,请联系作者删除)

posted @ 2018-06-01 21:49  木木烽  阅读(982)  评论(0编辑  收藏  举报