前言在Python中可迭代(Iterable)、迭代器(Iterator)和生成器(Generator)这几个概念是经常用到的,初学时对这几个概念也是经常混淆,现在是时候把这几个概念搞清楚了。0x00可迭代(Iterable)简单的说,一个对象(在Python里面一切都是对象)只要实现了只要实现了__iter__()方法,那么用isinstance()函数检查就是Iterable对象;例如classIterObj:def__iter__(self):#这里
系统 2019-09-27 17:56:54 1721
半次元COS图爬取-写在前面今天在浏览网站的时候,忽然一个莫名的链接指引着我跳转到了半次元网站https://bcy.net/打开之后,发现也没有什么有意思的内容,职业的敏感让我瞬间联想到了cosplay,这种网站必然会有这个的存在啊,于是乎,我准备好我的大爬虫了。把上面的链接打开之后,被我发现了吧,就知道我的第八感不错滴。接下来就是找入口,一定要找到图片链接的入口才可以做下面的操作这个页面不断往下拖拽,页面会一直加载,当时当你拖拽一会,就停下来了,就是这
系统 2019-09-27 17:56:54 1721
有些时候,我们需要将某些程序放到子进程中去运行,以达到整合系统的目的。在Python中,一个非常好的选择就是使用subprocess模块,本模块为开辟子进程去执行子程序提供了统一的接口,更加便于学习和使用。同时,对于在子进程里的程序,我们希望能够实时获取其输出,以在主进程中打印相关信息,使我们能够了解当前子程序的执行进度。对此,subprocess模块也提供了相应的参数,能够将子程序的标准输出和标准错误输出返回给主程序。下面,我们就通过一个例子来说明这个功
系统 2019-09-27 17:56:49 1721
类装饰器propetyproperty是一种特殊的属性,访问它时会执行一段功能(函数)然后返回值classStudent:def__init__(self,name,birth):self.name=nameself.birth=birth@property#将一个方法伪装成属性defage(self):importtimereturntime.localtime().tm_year-self.birthalex=Student('alex',1930)p
系统 2019-09-27 17:56:49 1721
本文以实例形式讲述了Python实现抓取网页并解析的功能。主要解析问答与百度的首页。分享给大家供大家参考之用。主要功能代码如下:#!/usr/bin/python#coding=utf-8importsysimportreimporturllib2fromurllibimporturlencodefromurllibimportquoteimporttimemaxline=2000wenda=re.compile("href=\"http://wenda.
系统 2019-09-27 17:56:42 1721
2017年9月,浙江省宣布将Python加入信息技术高考2017年10月,教育部将Python加入大学计算机二级考试2017年12月,山东省将Python内容加入小学信息技术教材2018年10月,摩根大通CEO宣布所有入职资产管理分析师必须强制学习Python,以更好的设计金融产品。实际上,偏爱Python的远不止投行,就连咨询、四大等公司也纷纷“强制”员工学习Python。可见,未来的金融行业,不懂python,或将面临一轮巨大的职业危机。投行:想做Ba
系统 2019-09-27 17:56:38 1721
在工作中遇到一个需求,需要用Python脚本读取一个13G的文件,把每行的记录写入redis。由于机器的内存只有8G,所以不能一次将磁盘上的文件全部读入内存,需要一行一行读取文件。Python按行读取文件主要是使用file.readline方法或者利用file对象的迭代器性质,而file.readlines方法则是一次把所有内容从磁盘读入内存。当内存足够时,file.readlines方法显然会更快,因为磁盘I/O次数更少。下面给出了三种遍历文件每行的方式
系统 2019-09-27 17:56:36 1721
最近开始研究Python的并行开发技术,包括多线程,多进程,协程等。逐步整理了网上的一些资料,今天整理了一下greenlet相关的资料。并发处理的技术背景并行化处理目前很受重视,因为在很多时候,并行计算能大大的提高系统吞吐量,尤其在现在多核多处理器的时代,所以像lisp这种古老的语言又被人们重新拿了起来,函数式编程也越来越流行。介绍一个python的并行处理的一个库:greenlet。python有一个非常有名的库叫做stackless,用来做并发处理,主
系统 2019-09-27 17:56:35 1721
os模块描述:python标准库中的一个用于访问操作系统功能的模块。作用:用来实现跨平台访问常用操作:os.sep系统路径的分隔符>>>importos>>>os.sep'/'#windows上运行结果为:\\#windows上的pycharm运行结果为:\#Linux运行结果为:/os.linesep输出当前平台使用的行终止符>>>importos>>>os.linesep'\n'os.environ获取系统环境变量os.getcwd()获取当前工作路径
系统 2019-09-27 17:56:35 1721
#-*-coding=utf-8-*-importjsonimportrequestsheader={'User-Agent':'googlespider','Content-Encoding':'gzip','X-Forwarded-For':'202.101.43.22',}classBusiness(object):def__init__(self):passdefmy_JSONDecodeError(self):"""我出现JSONDecodeEr
系统 2019-09-27 17:56:35 1721