Python标准库中有很多实用的工具类,但是在具体使用时,标准库文档上对使用细节描述的并不清楚,比如urllib2这个HTTP客户端库。这里总结了一些urllib2的使用细节。Proxy的设置Timeout设置在HTTPRequest中加入特定的HeaderRedirectCookie使用HTTP的PUT和DELETE方法得到HTTP的返回码DebugLogProxy的设置urllib2默认会使用环境变量http_proxy来设置HTTPProxy。如果想
系统 2019-09-27 17:37:51 1699
我的操作系统为centos6.51首先选择django要使用什么数据库。django1.10默认数据库为sqlite3,本人想使用mysql数据库,但为了测试方便顺便要安装一下sqlite开发包。yuminstallmysqlmysql-devel#为了测试方便,我们需要安装sqlite-devel包yuminstallsqlite-devel2接下来需要安装Python了,因为Python3已经成为主流,所以接下来我们要安装Python3,到官网去下载P
系统 2019-09-27 17:37:45 1699
一般说来,你会把模板以文件的方式存储在文件系统中,但是你也可以使用自定义的templateloaders从其他来源加载模板。Django有两种方法加载模板django.template.loader.get_template(template_name):get_template根据给定的模板名称返回一个已编译的模板(一个Template对象)。如果模板不存在,就触发TemplateDoesNotExist的异常。django.template.loade
系统 2019-09-27 17:37:43 1699
多线程开发可能遇到的问题假设两个线程t1和t2都要对num=0进行增1运算,t1和t2都各对num修改1000000次,num的最终的结果应该为2000000。但是由于是多线程访问,有可能出现下面情况:fromthreadingimportThreadimporttimenum=0deftest1():globalnumforiinrange(1000000):num+=1print("--test1--num=%d"%num)deftest2():glo
系统 2019-09-27 17:57:16 1698
Python五种数据类型在学习一门语言的过程中,首先肯定就是要先接触到它所拥有的数据类型,Python拥有五种主要的数据类型,下面介绍一下我对这五种数据类型的理解和想法。1.数在Python中的数主要分为四种:int(整数)、float(浮点数)、long(长整型)和complex(复数)主要特别的地方就是float类型的数有一个函数round()可以取整:round(a,b):对float类型的数值a进行操作,小数点后保留b位有效数字,四舍五入,默认为1
系统 2019-09-27 17:57:03 1698
前言在K近邻的原始算法中,没有对K近邻的方法进行优化,还是遍历训练集,找到与输入实例最近的K个训练实例,统计他们的类别,以此作为输入实例类别的判断。具体的模型理论见:统计学习方法——K近邻法(原始方法)1.K近邻算法的实现在算法实现的过程中,利用的是欧氏距离进行点与点之间的距离度量。在进行数据运算的时候,没有利用numpy,而是利用Python中自带的list来进行数据的计算。defknn(x,dataSet,labels,k):distanceMemor
系统 2019-09-27 17:56:59 1698
概述模块Pickle实现了对一个Python对象结构的二进制的序列化和反序列化。即当Python程序持续运行一些字符串、列表字典、甚至自定义的类等数据对象,需要持久化存储,即存储在磁盘中,防止运行在内存中,因断电等情况丢失数据。那么Pickle模块就派上用场了,它可以将对象转换为一种可以传输或存储的格式。python的pickle模块实现了基本的数据序列和反序列化。通过pickle模块的序列化操作我们能够将程序中运行的对象信息保存到文件中去,永久存储;通过
系统 2019-09-27 17:56:58 1698
前言我在使用mac安装virtualwrapper的时候遇到了问题,搞了好长时间,才弄好,在这里总结一下分享出来,供遇到相同的问题的朋友使用,少走些弯路。问题说明:Mac默认系统的python2,而我自己用的是brew安装的python3下面是我安装过程中出现的问题1.安装virtualwrapper打开终端,输入如下的命令pip3installvirtualenvpip3installvirtualenvwrapper2.在配置文件~/.bash_pro
系统 2019-09-27 17:56:58 1698
python中查找指定的字符串的方法如下:code#查询defselStr():sStr1='jsjtt.com'sStr2='com'#index查询某个字符串,返回索引nPos=sStr1.index(sStr2)if(nPos>=0):print'sStr1中包括sStr2中的字符'printnPos#find方法如果没有查询到返回-1nPos2=sStr1.find('abc')printnPos2#查询到返回字符所在位置printsStr1.fi
系统 2019-09-27 17:56:53 1698
有些时候,我们需要将某些程序放到子进程中去运行,以达到整合系统的目的。在Python中,一个非常好的选择就是使用subprocess模块,本模块为开辟子进程去执行子程序提供了统一的接口,更加便于学习和使用。同时,对于在子进程里的程序,我们希望能够实时获取其输出,以在主进程中打印相关信息,使我们能够了解当前子程序的执行进度。对此,subprocess模块也提供了相应的参数,能够将子程序的标准输出和标准错误输出返回给主程序。下面,我们就通过一个例子来说明这个功
系统 2019-09-27 17:56:49 1698
Python队列Queue队列是一种先进先出(FIFO)的数据类型,新的元素通过入队的方式添加进Queue的末尾,出队就是从Queue的头部删除元素.用列表来做Queue:queue=[]#初始化一个列表数据类型对象,作为一个队列defenQ():#定义一个入栈方法queue.append(raw_input('EnterNewString:').strip())#提示输入一个入队的String对象,调用Str.strip()保证输入的String值不包含
系统 2019-09-27 17:56:49 1698
封装面向对象三大特性:继承封装多态隐藏对象的属性和实现细节,仅对外提供公共访问方法广义上的封装:把方法和变量都封装在类中狭义上的封装:在类的外部干脆不能调用了优点将变化隔离便于使用提高复用性提高安全性封装原则:将不需要对外提供的内容隐藏起来把属性都隐藏,提供公共方法对齐访问私有变量和私有方法在python中用双下划线开头的方式将属性隐藏起来(设置成私有的)代码实例#其实这仅仅这是一种变形操作#类中所有双下划线开头的名称如__x都会自动变形成:_类名__x的
系统 2019-09-27 17:56:45 1698
图像可能在生成、传输或者采集过程中夹带了噪声,去噪声是图像处理中常用的手法。通常去噪声用滤波的方法,比如中值滤波、均值滤波。但是那样的算法不适合用在处理字符这样目标狭长的图像中,因为在滤波的过程中很有可能会去掉字符本身的像素。一个采用的是去除杂点的方法来进行去噪声处理的。具体算法如下:扫描整个图像,当发现一个黑色点的时候,就考察和该黑色点间接或者直接相连接的黑色点的个数有多少,如果大于一定的值,那就说明该点不是离散点,否则就是离散点,把它去掉。在考察相连的
系统 2019-09-27 17:56:42 1698
在工作中遇到一个需求,需要用Python脚本读取一个13G的文件,把每行的记录写入redis。由于机器的内存只有8G,所以不能一次将磁盘上的文件全部读入内存,需要一行一行读取文件。Python按行读取文件主要是使用file.readline方法或者利用file对象的迭代器性质,而file.readlines方法则是一次把所有内容从磁盘读入内存。当内存足够时,file.readlines方法显然会更快,因为磁盘I/O次数更少。下面给出了三种遍历文件每行的方式
系统 2019-09-27 17:56:36 1698
pillowPillow是PIL的一个派生分支,但如今已经发展成为比PIL本身更具活力的图像处理库。pillow可以说已经取代了PIL,将其封装成python的库(pip即可安装),且支持python2和python3,目前最新版本是3.0.0。Pillow的Github主页:https://github.com/python-pillow/PillowPillow的文档(对应版本v3.0.0):https://pillow.readthedocs.org
系统 2019-09-27 17:56:31 1698