廖雪峰python基础教程廖雪峰python课程怎么样寥雪峰python教程
下载地址 https://share.weiyun.com/RS9A6Xk6
资料目录 廖雪峰python视频教程1 爬虫的基本框架及知识(day1-day15) 廖雪峰python视频教程2 scapy框架及爬虫进阶(day16-day20) 廖雪峰python视频教程3 爬虫高级知识及就业培训(day21-day28) 廖雪峰python教程官网doc 廖雪峰 2018年官方最新Python3教程(一)pdf 廖雪峰 2018官方Python3教程(二)pdf 廖雪峰2018官方Python3教程(三)pdf 廖雪峰python学习笔记(入门+进阶).doc Python3高级教程(开课吧)pdf Python3零基础教程(开课吧)pdf 利用Python进行数据分析(中文版)pdf 廖雪峰商业爬虫案例 廖雪峰商业爬虫课件 廖雪峰商业爬虫练习答案 爬虫第一节-爬虫第十四节 Python爬虫预习书籍 python环境和pychram 举例 首先了解一下上面用到的那个内置函数:iter(),官方文档中有这样 一段话描述之: iter(o[,sentinel]) Return an iterator object.The first argument is interpreted very differently depending on the presence of the second argument.Without a second argument,o must be a collection object which supports the iteration protocol(the iter()method),or it must support the sequence protocol(the getitem()method with integer arguments starting at 0).If it does not support either of those protocols,TypeError is raised.If the second argument, sentinel,is given,then o must be a callable object.The iterator created in this case will call o with no arguments for each call to its next()method;if the value returned is equal to sentinel,StopIteration will be raised,otherwise the value will be returned. 提炼一下此段主要的东西: 返回值是一个迭代器对象。 参数需要是一个符合迭代协议的对象或者是一个序列对象。 next()配合与之使用。 我们常常将那些能够用诸如循环语句之类的方法来一个一个地读取元素的对象,就称为可迭代的对象。那么用来循环的(如for)就称为迭代工具。 用严格一点的语言说:所谓迭代工具,就是能够按照一定顺序扫描迭代对象的每个元素(按照从左到右的顺序)。 显然,除了for之外,还有别的迭代工具。 那么,刚才介绍的iter()的功能呢?它与next()配合使用,也有实现上述迭代工具的作用。 在Python中,甚至在其他的语言中,关于迭代的说法比较乱,主要是名词乱,刚才我们说,那些能够实现迭代的工具,称为迭代工具,就是这些迭代工具,不少程序员都喜欢叫作迭代器。当然,这都是汉语翻译,英语就是iterator。 从例子中会发现,如果用for来迭代,当到末尾的时候就自动结束了,不会报错。如果用iter()...next()迭代,当最后一个完成之后不会自动结束,还要继续向下,但是后面没有元素了,于是就报一个称之为StopIteration的错误(这个错误的名字叫作停止迭代,这哪里是报错,分明是警告)。 读者还要关注iter()...next()迭代的一个特点。当迭代对象lst_iter被迭代结束,即每个元素都读取了一遍之后,指针就移动到了最后一个元素的后面。如果再访问,指针并没有自动返回到首位置,而是仍然停留在末位置,所以报StopIteration,想要再开始,就需要重新载入迭代对象。所以,当我在上面重新进行迭代对象赋值之后,又可以继续了。这种情况在for等类型的迭代工具中是没有的。
|