Python

当Python中混进一只薛定谔的猫……

本文原创并首发于公众号【Python猫】,未经授权,请勿转载。原文地址:https://mp.weixin.qq.com/s/-f...Python是一门强大的动态语言,那动态体现在哪里,强大又体现在哪里呢?除了好的方面,Python的动态性是否还藏着一些使用陷阱呢,有没有办法识别与避免呢?沿着它的动态特性话题,猫哥有几篇文章依次探及了:动态修改变量、动态定义函数、动态执行代码等内容,然而,当混合了变量赋值、动态赋值、命名空间、作用域、函数的编译原理等等内

系统 2019-09-27 17:55:00 2121

Python

基于ID3决策树算法的实现(Python版)

实例如下:#-*-coding:utf-8-*-fromnumpyimport*importnumpyasnpimportpandasaspdfrommathimportlogimportoperator#计算数据集的香农熵defcalcShannonEnt(dataSet):numEntries=len(dataSet)labelCounts={}#给所有可能分类创建字典forfeatVecindataSet:currentLabel=featVec[-

系统 2019-09-27 17:54:47 2121

Python

python实现证件照换底功能

本来是在找交通识别的程序,然后凑巧看见了证件照换底,于是学习了一下~一开始在网上找了一个很普遍写的程序,但是效果并不好,想要放弃了,然后看见了这个,参考:pythonopencv实现证件照换底功能本人基于此做了一些改进,便于自己运行和调试,还加了中值滤波,本人觉得效果还不错~代码:importcv2importnumpyasnpdefcvtBackground(path,color):"""功能:给证件照更换背景色(常用背景色红、白、蓝)输入参数:path

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

Python

Python面向对象编程——异常处理

Python面向对象编程——异常处理一、什么是异常异常就是程序运行时发生错误的信号(在程序出现错误时,则会产生一个异常,若程序没有处理它,则会抛出该异常,程序的运行也随之终止),在python中,错误触发的异常如下:而错误分成两种1、语法错误(这种错误,根本过不了python解释器的语法检测,必须在程序执行前就改正)#语法错误示范一if#语法错误示范二deftest:pass#语法错误示范三classFoopass#语法错误示范四print(haha)2、

系统 2019-09-27 17:53:13 2121

Python

详解Python核心编程中的浅拷贝与深拷贝

一、问题引出浅拷贝首先看下面代码的执行情况:a=[1,2,3]print('a=%s'%a)#a=[1,2,3]b=aprint('b=%s'%b)#b=[1,2,3]a.append(4)#对a进行修改print('a=%s'%a)#a=[1,2,3,4]print('b=%s'%b)#b=[1,2,3,4]b.append(5)#对b进行修改print('a=%s'%a)#a=[1,2,3,4,5]print('b=%s'%b)#b=[1,2,3,4,

系统 2019-09-27 17:52:42 2121

Python

Python_爬虫_二

代理ProxyHandler处理器(代理)1、代理的原理:在请求目的网站之前,先请求代理服务器,然后让代理服务器去请求目的网站,代理服务器拿到目的服务器的网站数据后,再转发给我们的代码。2、http://httpbin.org/ip这个网站可以方便我们查看一些http请求参数3、使用代理的方法:ProxyHandle这个方法需要传入一个字典,key:请求schema,value:代理服务器ip+端口fromurllibimportrequest##url=

系统 2019-09-27 17:50:55 2121

Python

浅析python继承与多重继承

记住以下几点:直接子类化内置类型(如dict,list或str)容易出错,因为内置类型的方法通常会忽略用户覆盖的方法,不要子类化内置类型,用户自定义的类应该继承collections模块。def__setitem__(self,key,value):super().__setitem__(key,[value]*2)#错误案例classAnswerDict(dict):def__getitem__(self,item):#错误案例return42impor

系统 2019-09-27 17:50:43 2121

Python

Python何时应该使用Lambda函数

Python中定义函数有两种方法,一种是用常规方式def定义,函数要指定名字,第二种是用lambda定义,不需要指定名字,称为Lambda函数。Lambda函数又称匿名函数,匿名函数就是没有名字的函数,函数没有名字也行?当然可以啦。有些函数如果只是临时一用,而且它的业务逻辑也很简单时,就没必要非给它取个名字不可。好比电影里面的群众演员,往往他们的戏份很少,最多是衬托主演,跑跑龙套,他们需要名字吗?不需要,因为他们仅仅只是临时出镜,下次可能就用不着了,所以犯

系统 2019-09-27 17:50:41 2121

Python

Python try_finally

原文链接:https://my.oschina.net/xiaocon/blog/199414finally关键字的意思是只要异常,到最后都会执行语句块。。。#!/usr/bin/pythonimporttimetry:f=file('poem.txt')whileTrue:line=f.readline()iflen(line)==0:breaktime.sleep(2)printline,finally:f.close()print'file.clos

系统 2019-09-27 17:49:21 2121

Python

Python编写生成验证码的脚本的教程

在web开发中经常用到验证码,为了防止机器人注册或者恶意登陆和查询等,作用不容小觑但是验证码其实不是一个函数就能搞定的,它需要生成图片和水印,其实每种语言都有相关的函数生成图片和文字水印。包括我熟悉的php,呵呵,今天主要来分享如何用python生成验证码。python生成验证码主要用到如下模块:Image,ImageDraw,ImageFont,ImageFilter和随机数生成模块Random。代码如下:#!/usr/bin/envpython#cod

系统 2019-09-27 17:48:19 2121

Python

布同 Python中文问题解决方法(总结了多位前人经验,初学者必看)

因为Python是自带文档,可以通过help函数来查询每一个系统函数的用法解释说明。一般来说,关键的使用方法和注意点在这个系统的文档中都说的很清楚。我试图在网上找过系统文档的中文版的函数功能解释,但是都没有找到,所以我决定将就使用英文版的系统自带的函数解释来学习。如果你想进行Tkinter和wxPython编程,想要知道一般的widget的使用方法和属性介绍,英文又不是太好的话,我推荐你,你可以去看看《Python与Tkinter编程》这本书,里面392页

系统 2019-09-27 17:47:58 2121

Python

Node.js与PHP、Python的字符处理性能对比

测试用例分为用函数和类来进行一个大字符串的字符逐一读取。测试代码Node.js函数varfs=require("fs");varcontent=fs.readFileSync("page.html",{encoding:"utf-8"});functionchars(content){varlength=content.length;varpos=0;while(pos++

系统 2019-09-27 17:47:51 2121

Python

python新手经常遇到的17个错误分析

1)忘记在if,elif,else,for,while,class,def声明末尾添加:(导致“SyntaxError:invalidsyntax”)该错误将发生在类似如下代码中:ifspam==42print('Hello!')2)使用=而不是==(导致“SyntaxError:invalidsyntax”)=是赋值操作符而==是等于比较操作。该错误发生在如下代码中:ifspam=42:print('Hello!')3)错误的使用缩进量。(导致“Inde

系统 2019-09-27 17:47:06 2121

Python

Linux下使用python自动修改本机网关代码分享

#!/usr/bin/python#autochangegatewayCreatedBymickelfengimportosimportrandom,reg='gateway192.168.1.'rand=random.randint(1,3)test='www.baidu.com'command='/etc/init.d/networkingrestart'GW="%s%d"%(g,rand)PingTest='ping-c3'+testtry:resu

系统 2019-09-27 17:46:54 2121

Python

以Python代码实例展示kNN算法的实际运用

邻近算法,或者说K最近邻(kNN,k-NearestNeighbor)分类算法是数据挖掘分类技术中最简单的方法之一。所谓K最近邻,就是k个最近的邻居的意思,说的是每个样本都可以用它最接近的k个邻居来代表。kNN算法的核心思想是如果一个样本在特征空间中的k个最相邻的样本中的大多数属于某一个类别,则该样本也属于这个类别,并具有这个类别上样本的特性。该方法在确定分类决策上只依据最邻近的一个或者几个样本的类别来决定待分样本所属的类别。kNN方法在类别决策时,只与极

系统 2019-09-27 17:38:02 2121