Python

python多线程

python多线程深入理解低级接口基本使用EventSemaphore线程通信高级接口低级接口基本使用join()方法用来阻塞主线程。可以注释掉、看看打印顺序。importthreadingimporttimedeftest(n):time.sleep(1)print(n)t=threading.Thread(target=test,args=(7,))t.start()t.join()#等待子线程执行完毕,才继续执行主线程。print('主线程执行完毕'

系统 2019-09-27 17:53:20 2391

Python

python爬取Ajax动态加载网页过程解析

常见的反爬机制及处理方式1、Headers反爬虫:Cookie、Referer、User-Agent解决方案:通过F12获取headers,传给requests.get()方法2、IP限制:网站根据IP地址访问频率进行反爬,短时间内进制IP访问解决方案:1、构造自己IP代理池,每次访问随机选择代理,经常更新代理池2、购买开放代理或私密代理IP3、降低爬取的速度3、User-Agent限制:类似于IP限制解决方案:构造自己的User-Agent池,每次访问随

系统 2019-09-27 17:51:32 2391

Python

python获得图片base64编码示例

复制代码代码如下:#!/usr/bin/envpython#-*-coding:utf-8-*-importos,base64icon=open('ya.png','rb')iconData=icon.read()iconData=base64.b64encode(iconData)LIMIT=60liIcon=[]whileTrue:sLimit=iconData[:LIMIT]iconData=iconData[LIMIT:]liIcon.append

系统 2019-09-27 17:48:33 2391

Python

用Python从0开始实现一个中文拼音输入法的思路详解

众所周知,中文输入法是一个历史悠久的问题,但也实在是个繁琐的活,不知道这是不是网上很少有人分享中文拼音输入法的原因,接着这次NLPProject的机会,我觉得实现一发中文拼音输入法,看看水有多深,结果发现还挺深的,但是基本效果还是能出来的,而且看别的组都做得挺好的,这次就分享一下我们做的结果吧。(注:此文假设读者已经具备一些隐马尔可夫模型的知识)任务描述实现一个中文拼音输入法。经过分析,分为以下几个模块来对中文拼音输入法进行实现:核心功能包括拼音切分(Sp

系统 2019-09-27 17:48:20 2391

Python

Python的迭代器和生成器

先说迭代器,对于string、list、dict、tuple等这类容器对象,使用for循环遍历是很方便的。在后台for语句对容器对象调用iter()函数,iter()是python的内置函数。iter()会返回一个定义了next()方法的迭代器对象,它在容器中逐个访问容器内元素,next()也是python的内置函数。在没有后续元素时,next()会抛出一个StopIteration异常,通知for语句循环结束。比如:>>>s='abc'>>>it=ite

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

Python

猴子吃桃问题-python版

#!/usr/bin/envpython#-*-coding:utf-8-*-#题目:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个#第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下#的一半零一个。到第10天早上想再吃时,见只剩下1个桃子了。求第一天共摘了多少。#求解思路:设后一天的桃子数量为x,则前一天剩余的桃子数量为(x+1)×2#例如:第10天剩余1个#第9天剩余(1+1)×2=4个#第8天剩余

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

Python

Python list遍历remove()时的一个小BUG

有这样一个列表:s=list('abcdefg')现在因为某种原因我们需要从s中踢出一些不需要的元素,方便起见这里直接以踢出所有元素的循环代替:foreins:s.remove(e)结果却是:In[3]:sOut[3]:['b','d','f']多次示例后发现,这种remove方式保持着隔1删1的规律。那么改一下代码看看出了什么问题:In[14]:i=0In[15]:foreins:...:print("第"+str(i)+"次循环删前:s=",s)...

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

Python

Python基于twisted实现简单的web服务器

本文实例讲述了Python基于twisted实现简单的web服务器,分享给大家供大家参考。具体方法如下:1.新建htm文件夹,在这个文件夹中放入显示的网页文件2.在htm文件夹的同级目录下,建立web.py,web.py的内容为:fromtwisted.web.resourceimportResourcefromtwisted.webimportserverfromtwisted.webimportstaticfromtwisted.internetimp

系统 2019-09-27 17:55:56 2390

Python

Python实现SSH远程登陆,并执行命令的方法(分享)

在自动化测试过程中,比较常用的操作就是对远程主机进行操作,如何操作呢?使用SSH远程登陆到主机,然后执行相应的command即可。使用Python来实现这些操作就相当简单了。下面是测试code。代码如下:(code运行环境:python27+eclipse+pydev)importparamikodefsshclient_execmd(hostname,port,username,password,execmd):paramiko.util.log_to_

系统 2019-09-27 17:55:40 2390

Python

Python网络爬虫:基础知识Beautiful Soup

一、BeautifulSoup简介网络数据挖掘指的是从网站中获取数据的过程,数据挖掘技术可以让我们从网站世界中收集大量有价值的数据。BeautifulSoup是一个Python库,可以从HTML或XML文件中获取数据,利用它你可以做很多事情,比如你可以持续解析某个商品的最新价格,以便跟踪价格的波动情况。二、BeautifulSoup安装安装BeautifulSouppip3installbeautifulsoup4检验是否安装成功frombs4import

系统 2019-09-27 17:53:33 2390

Python

ubuntu python3 install opencv2

InstallingOpenCVinUbuntuforPython3byWK·PublishedMarch2,2016·UpdatedMarch3,2017InstallingOpenCVinlinuxforPython3isnotthatstraightforward,sointhistutorial,we’llgothroughthestepsonhowdowedoit.We’llbeusinga64bitUbuntu16.04system,andPy

系统 2019-09-27 17:53:02 2390

Python

第8课 python 项目实操(常用2个模块)

这节主要介绍time,random模块;不用死记。首先说一下什么是模块。。。importtime有些朋友,开始比迷惑的,但是后面聊到类(属性,方法),包会好一点,我们这里没这么快说到,慢慢来,但是为了方便你记忆。。。最及简单的是.....你知道x.py是你写的python脚本;如果你在同一个目录下定义了另外一个time.py。你importtime就直接调用了(这也是,我们需要注意的,定义x.py时候名字不要跟自带的模块名字,第3方模块一样的名字,除非你自

系统 2019-09-27 17:50:00 2390

Python

python最简单的自定义异常方法

异常是指程序运行时遇到了非致命错误。python中有许多预定义的异常类型,不过如果你想定义自己的异常,也是完全可以的。如下代码自定义了一个最简单的异常,并使程序抛出了该异常:classMyException(Exception):passcondition=Falseifnotcondition:raiseMyException('条件不满足,抛出自定义异常!')可以看出,自定义的异常必须继承自Exception,这样就可以无需定义__init__方法而直

系统 2019-09-27 17:49:35 2390

Python

如何用Python来搭建一个简单的推荐系统

在这篇文章中,我们会介绍如何用Python来搭建一个简单的推荐系统。本文使用的数据集是MovieLens数据集,该数据集由明尼苏达大学的Grouplens研究小组整理。它包含1,10和2亿个评级。Movielens还有一个网站,我们可以注册,撰写评论并获得电影推荐。接下来我们就开始实战演练。在这篇文章中,我们会使用Movielens构建一个基于item的简易的推荐系统。在开始前,第一件事就是导入pandas和numPy。importpandasaspdim

系统 2019-09-27 17:49:14 2390

Python

Python程序中的进程操作-开启多进

目录一、multiprocess模块二、multiprocess.process模块三、process模块介绍3.1方法介绍3.2属性介绍3.3在windows中使用process模块的注意事项四、使用process模块创建进程4.1在Python中启动的第一个子进程4.2join方法4.3查看主进程和子进程的进程号4.4多个进程同时运行4.5多个进程同时运行,再谈join方法(1)4.6多个进程同时运行,再谈join方法(2)4.7通过继承Process

系统 2019-09-27 17:49:09 2390