Python

Python多进程并发操作中进程池Pool的应用

在利用Python进行系统管理的时候,特别是同时操作多个文件目录,或者远程控制多台主机,并行操作可以节约大量的时间。当被操作对象数目不大时,可以直接利用multiprocessing中的Process动态成生多个进程,10几个还好,但如果是上百个,上千个目标,手动的去限制进程数量却又太过繁琐,这时候进程池Pool发挥作用的时候就到了。Pool可以提供指定数量的进程,供用户调用,当有新的请求提交到pool中时,如果池还没有满,那么就会创建一个新的进程用来执行

系统 2019-09-27 17:48:11 2307

Python

python 实现在一张图中绘制一个小的子图方法

有时候为了直观展现图的信息,可以在大图中添加小子图的方式进行数据分析,如下图所示:具体的代码如下:该图连接了数据库,当然重要的不是数据展示,而是添加子图的方法。importmatplotlib.pyplotaspltimportMySQLdbasmdbimportnumpyasnpfrommpl_toolkits.axes_grid1.inset_locatorimportinset_axesfrommpl_toolkits.axes_grid1.inse

系统 2019-09-27 17:46:18 2307

Python

Python.numpy中常用的几种产生随机数的方法

在利用numpy时,经常会用到随机数。这里将几种常用的容易混淆的用法进行总结。分别是:np.random.randint(low,high,size,dtype)numpy.random.rand(d0,d1,…,dn)np.random.randnrandom_sample(size)numpy.random.random([size])numpy.random.ranf([size])numpy.random.sample([size])具体使用直接上

系统 2019-09-27 17:50:23 2306

Python

python爬虫第11关项目煲剧狂人

练习介绍要求:请使用多协程和队列,爬取时光网电视剧TOP100的数据(剧名、导演、主演和简介),并用csv模块将数据存储下来。时光网TOP100链接:http://www.mtime.com/top/tv/top100/目的:1.练习掌握gevent的用法2.练习掌握queue的用法fromgeventimportmonkey#gevent从库里导入monkey模块monkey.patch_all()#能把程序变成协作式运行,就是可以帮助程序实现异步imp

系统 2019-09-27 17:50:08 2306

Python

python实现二级登陆菜单及安装过程

python实现二级登陆菜单的代码如下所示:"""1.三级菜单注册登陆注销2.进入每一个一级菜单,都会有下一级的菜单"""user_item=dict()try:whileTrue:print('-------Welcomesir-------')input_choice=int(input('Pleaseenteryourchoice:1:Registration2:login3:logout:'))#用户输入自己的选择,会进入到相关的二级菜单ifinp

系统 2019-09-27 17:49:02 2306

Python

Python中Random和Math模块学习笔记

由于最近经常使用到Python中random,math和time``datetime模块,所以决定花时间系统的学习一下1.math模块math中的函数不可以用于太过复杂的数的运算,如果需要复杂数的运行最好使用cmath模块中同名函数,如果想要更加高级的数学功能,可以考虑选择标准库之外的numpy和scipy模块,它们不但支持数组和矩阵运算,还有丰富的数学和物理方程可供使用1.1.数学常量math.pi这个数学常量等于3.141592...math.e这个数

系统 2019-09-27 17:38:08 2306

Python

selenium+python自动化测试环境搭建步骤

相对于自动化测试工具QTP来说,selenium小巧、免费,而且兼容Google、FireFox、IE多种浏览器,越来越多的人开始使用selenium进行自动化测试。我是使用的python2.7,下面说一下selenium+Python的自动化测试环境搭建。安装Python环境,从python官网下载安装包双击安装包,进行安装可以选择python的安装目录,按步骤安装,直至完成。在早期的版本中,需要单独安装setuptools和pip,在新的python安

系统 2019-09-27 17:37:51 2306

Python

python爬虫第7关项目利用扇贝网做个测单词的小工具

要求实现功能:利用扇贝网:https://www.shanbay.com/,做个测单词的小工具。扇贝网已经有一个测单词量的功能,我们要做的就是把这个功能复制下来,并且做点改良,搞一个网页版没有的功能————自动生成错词本。1.根据选择的题库,获取50个单词点开检查->Network->选中Perservelog->查看XHR->点开刷新之后出现的XHR->查看Response会发现题库在response这里,于是我们需要找到真正的URL,也就是在Heade

系统 2019-09-27 17:53:27 2305

Python

【Python基础学习】—GIL

前言我们在使用python开发的过程中时常听到GIL这个词,并且发现这个词经常和Python无法高效的实现多线程关联在一起,关于python多线程的实现在前面的文章已经介绍过,本文我们主要来了解一下GIL到底是什么?为什么会影响python的多线程。一、什么是GILGIL全称GlobalInterpreterLock,官方给出的解释如下:InCPython,theglobalinterpreterlock,orGIL,isamutexthatprevent

系统 2019-09-27 17:53:19 2305

Python

Python 之父再发文:构建一个 PEG 解析器

花下猫语:Python之父在Medium上开了博客,现在写了两篇文章,本文是第二篇的译文。前一篇的译文在此,宣布了将要用PEG解析器来替换当前的pgen解析器。本文主要介绍了构建一个PEG解析器的大体思路,并介绍了一些基本的语法规则。根据Python之父的描述,这个PEG解析器还是一个很笼统的实验品,而他也预告了,将会在以后的系列文章中丰富这个解析器。阅读这篇文章就像在读一篇教程,虽然很难看懂,但是感觉很奇妙:我们竟然可以见证Python之父如何考虑问题、

系统 2019-09-27 17:51:49 2305

Python

Python3标准库总结

Python3标准库操作系统接口os模块提供了不少与操作系统相关联的函数。>>>importos>>>os.getcwd()#返回当前的工作目录'C:\\Python34'>>>os.chdir('/server/accesslogs')#修改当前的工作目录>>>os.system('mkdirtoday')#执行系统命令mkdir0建议使用"importos"风格而非"fromosimport*"。这样可以保证随操作系统不同而有所变化的os.open()

系统 2019-09-27 17:49:47 2305

Python

【Python】1行Python代码统计文本中每个英文单词出现次数...(python词频统计) | 附完整代码

今天来试一下如何利用python来统计文本中每个英文单词出现的次数列出了两种方法,一种是直接调用Counter函数,核心代码一行搞定另一种是手写的利用python中的字典来统计1.首先将文本文件导入文本是长这样子的f=open(r"C:\Users\aaa\Desktop\new.txt",encoding="utf-8")a=f.read().split()open文本之后,将文本read进来,然后用split将单词利用空格切分开输出的是一个列表,也就是

系统 2019-09-27 17:49:43 2305

Python

Python,Pandas中删除的方法(2), 有示例代码

pandas主要有三个用来删除的函数,.drop()、.drop_duplicates()、.dropna()。总结如下.drop()删除行、列.drop_duplicates()删除重复数据.dropna()删除空值(所在行、列)为避免篇幅太长,将其分为两部分,不想看参数介绍的可以直接看实例。本篇介绍.drop_duplicates(),df.dropnadrop_duplicates()的用法df.drop_duplicates()则通常用于数据去重,

系统 2019-09-27 17:49:32 2305

Python

python pygame实现五子棋小游戏

今天学习了如何使用pygame来制作小游戏,下面是五子棋的代码,我的理解都写在注释里了importpygame#导入pygame模块print(pygame.ver)#检查pygame的版本,检查pygame有没有导入成功EMPTY=0BLACK=1WHITE=2#定义三个常量函数,用来表示白棋,黑棋,以及空black_color=[0,0,0]#定义黑色(黑棋用,画棋盘)white_color=[255,255,255]#定义白色(白棋用)#定义棋盘这个

系统 2019-09-27 17:48:37 2305

Python

python aiohttp 客户端使用方法 加快爬虫速度

介绍aiohttp是python的一个异步网络模块,包含客户端和服务端模块。相比requests模块,除了是异步写法外,大同小异,其速度比requests模块快。python的多线程有全局解释器锁(GIL),使用多线程实际上同一时刻仅有一个线程在执行,使用协程的相对比较快,可以再配合多进程使用。基本用法安装使用pip命令安装即可。pipinstallaiohttp发起请求aiohttp模块需要配合python自带的asyncio模块使用,以下代码为发起客户

系统 2019-09-27 17:47:13 2305