A. Jesse Jiryu Davis 是纽约 MongoDB 的工程师。他编写了异步 MongoDB Python 驱动程序 Motor,也是 MongoDB C 驱动程序的开发领袖和 PyMongo 团队成员。 他也为 asyncio 和 Tornado 做了贡献,本文在已经在《linux就该这么学》官网发布。以下是小编为你整理的python脚本爬虫入门
如先定义一个列表
a = [123,'456']
一个是int类型,一个是str类型
添加一个元素,使用append
比如a.append(789)
括号中的就是要添加的元素
在指定位置添加元素,使用insert
比如a.insert(1,'ABC')
括号中前面的是指定位置,后面的是要插入添加的元素
注意:位置从0开始,比如当前[123, '456', 789]
123是位置0,'456'是位置1,789是位置3
insert(1.'ABC')的意思是,在位置1插入'ABC',而位置1和之后的都往后挪动一位
先定义一个列表
a = [123, 'ABC', '456', 789, 123]
删除指定对象,使用remove
比如:a.remove(123)
注意:它不会把列表里面的所有123都删,只会删除最前面的与一个
3
如果你删除的指定对象不存在的话,那么会报错
比如:列表没有999这个元素,你非要删除这个元素的话,会报错
如何去下载
百度搜索“Python”,在官网中选择Python2.7,在选择列表项上双击即可下载;(Ps:虽然现在Python已经出到3.6版本,但由于版本差别不会特别大,而且公司项目使用的是旧版本的2.x,所以还是先从2.x开始)
双击下载好的Python2.7,进入安装界面,选择软件的使用用户,默认下一步即可;
设置Python2.7的安装目录,一般都为系统根目录下(C盘),默认即可;
进入程序组件安装界面,拉取下拉框,选择安装组件“Add python.exe to Path”,然后点击“Next”,默认安装即可;
不多时,即可看到安装完成界面
此外,由安装了组件“Add python.exe to Path”也不需再配置Python的环境变量,它已经自动配置好了,查看如图可知;
测试Python2.7是否已经正确安装完成,按下“win”+“R”键,输入“cmd”,点击确定,在弹出的命令行窗口中输入“Python”命令,即可看到电脑中已经安装好的Python;
python的优点
简单,python主张的是极简主义,学python就像在学英语一样。
易学,学习python并不难,入门很快很简单,比c++,java容易多了。
开源,python是免费开源产品,你可以自由地发布python这个软件,不用担心盗版和侵权。
自动内存管理,内存溢出一直以来都是很头疼的事情,而python则是自己自动管理内存的。
可以移植 ,python无论在windows和linux上都可以直接运行、。
可扩展,python还可以嵌入其他的语言,比如java和c++等。
但同时python也有自己的缺点,那就是运行的速度比起c++来说速度是慢了10倍的。
异步代码
还记得我们对你许下的承诺么?我们可以写出这样的异步代码,它既有回调方式的高效,也有多线程代码的简洁。这个结合是同过一种称为协程coroutine的模式来实现的。使用 Python3.4 标准库 asyncio 和一个叫“aiohttp”的包,在协程中获取一个网页是非常直接的( @asyncio.coroutine 修饰符并非魔法。事实上,如果它修饰的是一个生成器函数,并且没有设置 PYTHONASYNCIODEBUG 环境变量的话,这个修饰符基本上没啥用。它只是为了框架的其它部分方便,设置了一个属性 _is_coroutine 而已。也可以直接使用 asyncio 和裸生成器,而没有 @asyncio.coroutine 修饰符):
@asyncio.coroutine def fetch(self, url): response = yield from self.session.get(url) body = yield from response.read()
它也是可扩展的。在作者 Jesse 的系统上,与每个线程 50k 内存相比,一个 Python 协程只需要 3k 内存。Python 很容易就可以启动上千个协程。
协程的概念可以追溯到计算机科学的远古时代,它很简单,一个可以暂停和恢复的子过程。线程是被操作系统控制的抢占式多任务,而协程的多任务是可合作的,它们自己选择什么时候暂停去执行下一个协程。
有很多协程的实现。甚至在 Python 中也有几种。Python 3.4 标准库 asyncio 中的协程是建立在生成器之上的,这是一个 Future 类和“yield from”语句。从 Python 3.5 开始,协程变成了语言本身的特性(“PEP 492 Coroutines with async and await syntax” 中描述了 Python 3.5 内置的协程)。然而,理解 Python 3.4 中这个通过语言原有功能实现的协程,是我们处理 Python 3.5 中原生协程的基础。具体详细的配置图解请参考http://www.linuxprobe.com/asyncio-cooperative-network-2.html
要解释 Python 3.4 中基于生成器的协程,我们需要深入生成器的方方面面,以及它们是如何在 asyncio 中用作协程的。
上一篇:python网络爬虫合法吗
下一篇:python小白入门爬虫教程
一级建造师二级建造师消防工程师造价工程师土建职称房地产经纪人公路检测工程师建筑八大员注册建筑师二级造价师监理工程师咨询工程师房地产估价师 城乡规划师结构工程师岩土工程师安全工程师设备监理师环境影响评价土地登记代理公路造价师公路监理师化工工程师暖通工程师给排水工程师计量工程师
执业药师执业医师卫生资格考试卫生高级职称护士资格证初级护师主管护师住院医师临床执业医师临床助理医师中医执业医师中医助理医师中西医医师中西医助理口腔执业医师口腔助理医师公共卫生医师公卫助理医师实践技能内科主治医师外科主治医师中医内科主治儿科主治医师妇产科医师西药士/师中药士/师临床检验技师临床医学理论中医理论