Python

python多协程爬虫示例

写python协程时使用gevent模块和queue模块可以大大提高爬虫速度。在同时爬取多个网站时,原来用for循环一个网站一个网站按循序顺序爬,就像先烧饭后烧菜,两个步骤异步进行。使用多协程可以让爬虫自己选择爬取顺序,就像边烧饭边烧菜,两个步骤同步进行,速度自然快了。不多说了,来看下代码吧:fromgeventimportmonkeymonkey.patch_all()#打上多协程布丁,下面的程序就可以执行多协程了importrequests,geven

系统 2019-09-27 17:47:59 2109

Python

Python中利用sqrt()方法进行平方根计算的教程

sqrt()方法返回x的平方根(x>0)。语法以下是sqrt()方法的语法:importmathmath.sqrt(x)注意:此函数是无法直接访问的,所以我们需要导入math模块,然后需要用math的静态对象来调用这个函数。参数x--这是一个数值表达式。返回值此方法返回x的平方根,对于x>0。例子下面的例子显示了sqrt()方法的使用。#!/usr/bin/pythonimportmath#Thiswillimportmathmoduleprint"mat

系统 2019-09-27 17:47:36 2109

Python

Python处理字符串之isspace()方法的使用

isspace()方法检查字符串是否包含空格。语法以下是isspace()方法的语法:str.isspace()参数NA返回值如果有字符串中只有空白字符并且至少有一个字符此方法返回true,否则返回false。例子下面的例子显示了isspace()方法的使用。#!/usr/bin/pythonstr="";printstr.isspace();str="Thisisstringexample....wow!!!";printstr.isspace();当我

系统 2019-09-27 17:47:15 2109

Python

python如何实现异步调用函数执行

在实现异步调用之前我们先进行什么是同步调用和异步调用同步:是指完成事务的逻辑,先执行第一个事务,如果阻塞了,会一直等待,直到这个事务完成,再执行第二个事务,顺序执行异步:是和同步相对的,异步是指在处理调用这个事务的之后,不会等待这个事务的处理结果,直接处理第二个事务去了,通过状态、通知、回调来通知调用者处理结果分析一下,下面的例子:定义了一个装饰器async和A、B两个function函数A里面sleep10s,然后打印afunction字符串B里面直接打

系统 2019-09-27 17:45:52 2109

Python

python3爬虫之入门基础和正则表达式

前面的python3入门系列基本上也对python入了门,从这章起就开始介绍下python的爬虫教程,拿出来给大家分享;爬虫说的简单,就是去抓取网路的数据进行分析处理;这章主要入门,了解几个爬虫的小测试,以及对爬虫用到的工具介绍,比如集合,队列,正则表达式;用python抓取指定页面:代码如下:importurllib.requesturl="http://www.baidu.com"data=urllib.request.urlopen(url).rea

系统 2019-09-27 17:45:49 2109

Python

Python读大数据txt

如果直接对大文件对象调用read()方法,会导致不可预测的内存占用。好的方法是利用固定长度的缓冲区来不断读取文件内容。即通过yield。在用Python读一个两个多G的txt文本时,天真的直接用readlines方法,结果一运行内存就崩了。还好同事点拨了下,用yield方法,测试了下果然毫无压力。咎其原因,原来是readlines是把文本内容全部放于内存中,而yield则是类似于生成器。代码如下:defopen_txt(file_name):withope

系统 2019-09-27 17:38:24 2109

Python

Python的Twisted框架上手前所必须了解的异步编程思想

前言最近有人在Twisted邮件列表中提出诸如"为任务紧急的人提供一份Twisted介绍"的需求。值得提前透露的是,这个系列并不会如他们所愿。尤其是介绍Twisted框架和基于Python的异步编程而言,可能短时间无法讲清楚。因此,如果你时间紧急,这恐怕不是你想找的资料。我相信如果对异步编程模型一无所知,快速的介绍同样无法让你对其有所理解,至少你得稍微懂点基础知识吧。我已经用Twisted框架几年了,因此思考过我当初是怎么学习它(学得很慢)并发现学习它的最

系统 2019-09-27 17:38:20 2109

Python

Centos Python2 升级到Python3的简单实现

1.从Python官网到获取Python3的包,切换到目录/usr/local/src#wgethttps://www.python.org/ftp/python/3.5.1/Python-3.5.1.tar.xz2.使用命令如下命令进行解压缩:1xz-dPython-3.5.1.tar.xz2tar-xfPython-3.5.1.tar.xz3.在/usr/local路径下创建目录--python3.5,为第4步的安装目录$mkdir/usr/local

系统 2019-09-27 17:38:17 2109

Python

Python简单日志处理类分享

简单的一个python日志处理类复制代码代码如下:#/usr/bin/python#coding=utf-8importtime,typesclasslogsys:def__init__(self,project,logfilename='sys_log.txt'):self.project=projectself.logfilename=logfilenamedefget_log_time(self):returntime.strftime("%Y-%m

系统 2019-09-27 17:37:44 2109

Python

python set tips

pythonsettypedosenotsupportindexinge.g.a=set([1,2])meansyoucan'tusea[1]ora[:1]etc.becausesetdosen'thaveorders.pythonsettips

系统 2019-08-29 22:16:18 2109

Python

python time.sleep()是睡眠线程还是进程

pythontime.sleep()-睡眠线程还是进程?它会阻止线程。如果查看Python源代码中的Modules/timemodule.c,您会看到在调用中floatsleep(),睡眠操作的实质部分包含在Py_BEGIN_ALLOW_THREADS和Py_END_ALLOW_THREADS块中,允许其他线程继续执行当前线程睡觉。你也可以用一个简单的python程序来测试它:importtimefromthreadingimportThreadclass

系统 2019-09-27 17:57:08 2108

Python

python基础教程之五种数据类型详解

Python五种数据类型在学习一门语言的过程中,首先肯定就是要先接触到它所拥有的数据类型,Python拥有五种主要的数据类型,下面介绍一下我对这五种数据类型的理解和想法。1.数在Python中的数主要分为四种:int(整数)、float(浮点数)、long(长整型)和complex(复数)主要特别的地方就是float类型的数有一个函数round()可以取整:round(a,b):对float类型的数值a进行操作,小数点后保留b位有效数字,四舍五入,默认为1

系统 2019-09-27 17:57:03 2108

Python

python os模块

os模块os模块提供了很多可以操作系统里文件及目录相关的参数重点方法importosos.path.getsize('绝对路径')#获取指定文件的存储大小,但是不能准确的获得目录的大小os.path.isfile('绝对路径')#判断是否是文件,返回bool类型(True/False)os.path.isdir('绝对路径')#判断是否是目录,返回bool类型(True/False)os.path.join('文件夹的路径','文件或者其他名称')#拼接字

系统 2019-09-27 17:56:50 2108

Python

太狠了!会Python竟成四大招人硬性指标!?

2017年9月,浙江省宣布将Python加入信息技术高考2017年10月,教育部将Python加入大学计算机二级考试2017年12月,山东省将Python内容加入小学信息技术教材2018年10月,摩根大通CEO宣布所有入职资产管理分析师必须强制学习Python,以更好的设计金融产品。实际上,偏爱Python的远不止投行,就连咨询、四大等公司也纷纷“强制”员工学习Python。可见,未来的金融行业,不懂python,或将面临一轮巨大的职业危机。投行:想做Ba

系统 2019-09-27 17:56:38 2108

Python

python检测服务器端口代码实例

这篇文章主要介绍了python检测服务器端口代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下importsocketsk=socket.socket(socket.AF_INET,socket.SOCK_STREAM)sk.settimeout(10)try:sk.connect(('127.0.0.1',80))print('Serverport80OK!')exceptException:pri

系统 2019-09-27 17:55:41 2108