Python

Python多进程爬取人人单词数据

基于Pythonrequests的人人词典数据爬虫,爬取站点http://www.91dict.com爬取内容包含:单词、单词词性及翻译、单词发音、单词例句剧照、单词例句及翻译、单词例句发音总共数据:单词53189个,例句发音文件及图片文件共10G左右,20M带宽不到一个小时就能爬完,我测试是这样的。。。关于单词发音,可自行添加爬取爬取内容1爬取内容2例句发音例句剧照Python版本Python3+,建议Python3.6requirements.txtr

系统 2019-09-27 17:49:44 2284

Python

Python 2.X和3.X主要区别和下载安装

一、python2.X和3.X的区别https://wenda.so.com/q/1459639143721779?src=140二、Python的下载安装1.Python下载在python的官网下载python版本,需要下载对应版本(在计算机-属性中查看自己是32位操作系统还是64位操作系统),我是64位的,就下载64位对应的安装包了。官网下载地址如下:https://www.python.org/2.安装1)安装下载完成后双击执行下载的exe程序,进入

系统 2019-09-27 17:49:38 2284

Python

在python中实现调用可执行文件.exe的3种方法

方法一、os.system()会保存可执行程序中的打印值和主函数的返回值,且会将执行过程中要打印的内容打印出来importosmain="project1.exe"r_v=os.system(main)print(r_v)方法二、commands.getstatusoutput()会保存可执行程序中的打印值和主函数的返回值,但不会将执行过程中要打印的内容打印出来importsubprocessimportosmain="project1.exe"ifos.

系统 2019-09-27 17:46:31 2284

Python

Python入门教程之运算符与控制流

Python中的运算符什么是运算符?举个简单的例子4+5=9。例子中,4和5被称为操作数,"+"称为运算符。1.求幂运算符在Java中如果我们想对一个数进行求幂运算,我们可能要借助于Math库中的pow()函数,但是在Python中我们可以使用两个连续的*表示求幂运算。a=5**2printa2.//运算符可能很多人要说了,这个我认识,我打注释经常用双斜杠,可是很尴尬,Python中的单行注释符号为#,多行注释可以使用''',那么//是用来干嘛呢?用来求两

系统 2019-09-27 17:37:36 2284

Python

python实现基于朴素贝叶斯的垃圾分类算法

一、模型方法本工程采用的模型方法为朴素贝叶斯分类算法,它的核心算法思想基于概率论。我们称之为“朴素”,是因为整个形式化过程只做最原始、最简单的假设。朴素贝叶斯是贝叶斯决策理论的一部分,所以讲述朴素贝叶斯之前有必要快速了解一下贝叶斯决策理论。假设现在我们有一个数据集,它由两类数据组成,数据分布如下图所示。我们现在用p1(x,y)表示数据点(x,y)属于类别1(图中用圆点表示的类别)的概率,用p2(x,y)表示数据点(x,y)属于类别2(图中用三角形表示的类别

系统 2019-09-27 17:56:45 2283

Python

python数据存储

csv以逗号分隔,但是我发现我写的文件里出现多列跟逗号没关系,就算去除了逗号也还是一样。#!/usr/bin/envpython#-*-coding:utf8-*-#@TIME:2019/5/1813:39#@Author:17976#@File:piplines.py#@Description:importreimportpymongofrompymongo.errorsimportDuplicateKeyErrorimportsettingsclass

系统 2019-09-27 17:55:51 2283

Python

Python异常调用栈

一般来说,当异常发生时,其异常栈应该从主调用者的入口一直到异常发生点,例如Java里经常出现的长达一两页的stacktrace,这其中可能存在中间层代码收到异常时,进行一些动作(关闭数据库连接或者文件等),然后再次抛出异常的情况。Python3中,在except块内进行处理,然后重新抛出异常即可,例如下面的测试代码:#-*-coding:utf-8-*-importsysdefa():b()defb():c()#callthecdefc():raiseEx

系统 2019-09-27 17:55:14 2283

Python

Python函数编程——递归

Python函数编程——递归求100不断除以2直到商为0为止,打印每次除的商用循环实现:n=100whilen>0:n=int(n/2)print(n)输出:5025126310如果用函数,如何实现呢?defcalc(n):n=int(n/2)print(n)ifn>0:calc(n)#调用自己calc(100)在函数内部,可以调用其他函数。如果一个函数在内部调用自已本身,这个函数就叫做递归函数。上面我们写的这个代码就是递归。递归的执行过程defcalc(

系统 2019-09-27 17:54:57 2283

Python

Python中使用md5sum检查目录中相同文件代码分享

复制代码代码如下:"""ThismodulecontainscodefromThinkPythonbyAllenB.Downeyhttp://thinkpython.comCopyright2012AllenB.DowneyLicense:GNUGPLv3http://www.gnu.org/licenses/gpl.html"""importosdefwalk(dirname):"""Findsthenamesofallfilesindirnameand

系统 2019-09-27 17:52:36 2283

Python

python数据组合总结

一、序列类型(字符串,元组(),列表[])序列类型支持in,len(),分片[],迭代,5种内置序列类型:bytearray,bytes,list,str,tuple(元组)。1、元组可以嵌套(如:x=str[2][1][0][1])2、元组的命名(collections.namedtuple(),即自定义)样:sale=collctions.namedtuple("sale","productidcustomeriddateprice")逗号前的为元组类

系统 2019-09-27 17:52:31 2283

Python

python3 map函数和filter函数详解

map()函数可以对一个数据进行同等迭代操作。例如:deff(x):returnx*xr=map(f,[1,2,3,4,5,6,7,8,9])print(list(r))map函数传入的第一个参数就是函数本身,即f。第二个参数是要操作的数据map()作为高阶函数,事实上它把运算规则抽象了,因此,我们不但可以计算简单的f(x)=x2,还可以计算任意复杂的函数,比如,把这个list所有数字转为字符串:print(list(map(str,[1,2,3,4,5,

系统 2019-09-27 17:48:02 2283

Python

高效利用Python内置的数据结构

0x00:创建一键多值字典字典是Python中的一种可变容器,通常以这种形式出现:d={key1:value1,key2:value2,key3:value3}Python没有规定字典中值的类型,所以如果想让字典中的一个键对应多个值,只要把这些值放到列表这样的容器里就行了。student={'a':[76,54,82],'b':[92,67,88]}为了方便创建这样的字典,可以使用collections模块中的defaultdict类。一般在访问一个字典中

系统 2019-09-27 17:46:49 2283

Python

python基于phantomjs实现导入图片

基于的phantomjs的自动化,会出现1.flash不支持2.部分基于view的按钮点不到,部分按钮是基于flash的(尤其是在于上传按钮)browser.find_element_by_xpath(".//*[@name='SWFUpload_0']").click()#点击上传按钮sleep(2)autoit.control_set_text("","[CLASS:Edit;INSTANCE:1]",tupian)#上传图片链接sleep(0.5)a

系统 2019-09-27 17:38:45 2283

Python

Python装饰器使用实例:验证参数合法性

python是不带静态检查的动态语言,有时候需要在调用函数时保证参数合法。检查参数合法性是一个显著的切面场景,各个函数都可能有这个需求。但另一方面,参数合法性是不是应该由调用方来保证比较好也是一个需要结合实际才能回答的问题,总之双方约定好,不要都不检查或者都检查就可以了。下面这个模块用于在函数上使用装饰器进行参数的合法性验证。你可以直接执行这个模块进行测试,如果完全没有输出则表示通过。你也可以找到几个以_test开头的函数,所有的测试用例都包含在这几个函数

系统 2019-09-27 17:37:43 2283

Python

python实现杨辉三角(使用生成器generator)

杨辉三角定义如下11112113311464115101051#将杨辉三角的每一行看成一个list,写一个生成器(generator),不断输出下一行listdeftriangel(n):L=[1]#定义一个list[1]whileTrue:yieldL#打印出该listL=[L[x]+L[x+1]forxinrange(len(L)-1)]#计算下一行中间的值(除去两边的1)L.insert(0,1)#在开头插入1L.append(1)#在结尾添加1if

系统 2019-09-27 17:32:50 2283