拥有Python标签的文章
Python

Python中的各种装饰器详解

Python装饰器,分两部分,一是装饰器本身的定义,一是被装饰器对象的定义。一、函数式装饰器:装饰器本身是一个函数。1.装饰函数:被装饰对象是一个函数[1]装饰器无参数:a.被装饰对象无参数:复制代码代码如下:>>>deftest(func):def_test():print'Callthefunction%s().'%func.func_namereturnfunc()return_test>>>@testdefsay():return'hellowor

系统 2019-09-27 17:50:21 2155

Python

Python理解递归的方法总结

递归一个函数在执行过程中一次或多次调用其本身便是递归,就像是俄罗斯套娃一样,一个娃娃里包含另一个娃娃。递归其实是程序设计语言学习过程中很快就会接触到的东西,但有关递归的理解可能还会有一些遗漏,下面对此方面进行更加深入的理解递归的分类这里根据递归调用的数量分为线性递归、二路递归与多重递归线性递归如果一个递归调用最多开始一个其他递归调用,我们称之为线性递归。例如:defbinary_search(data,target,low,high):"""二分查找,对有

系统 2019-09-27 17:50:01 2155

Python

python 之 数据库(视图、触发器、事务、存储过程)

10.13视图1、什么是视图视图就是通过查询得到一张虚拟表,然后保存下来,下次用的直接使用即可2、为什么要用视图如果要频繁使用一张虚拟表,可以不用重复查询3、如何使用视图视图记录的增、删、改和表方法相同,但改变视图记录,原始表也跟着改,所以不要修改视图记录,只用于查看createviewteacher2courseas#创建视图select*fromteacherinnerjoincourseonteacher.tid=course.teacher_id;

系统 2019-09-27 17:49:05 2155

Python

Python3 使用pillow库生成随机验证码

Python3使用pillow库生成随机验证码的代码如下所示:importrandom#pillow包的使用fromPILimportImage,ImageDraw,ImageFont,ImageFilter#Image负责处理图片#ImageDraw负责处理画笔#ImageFont负责处理文字#ImageFilter负责处理路径img=Image.new('RGB',(150,50),(255,255,255))#建立一个图片'''RGB:表示采用RGB

系统 2019-09-27 17:47:55 2155

Python

让python同时兼容python2和python3的8个技巧分享

python邮件列表里有人发表言论说“python3在10内都无法普及”。在我看来这样的观点有些过于悲观,python3和python2虽然不兼容,但他们之间差别并没很多人想像的那么大。你只需要对自己的代码稍微做些修改就可以很好的同时支持python2和python3的。下面我将简要的介绍一下如何让自己的python代码如何同时支持python2和python3。一、放弃python2.6之前的python版本python2.6之前的python版本缺少一

系统 2019-09-27 17:47:38 2155

Python

python实现进程间通信简单实例

本文实例讲解了python实现两个程序之间通信的方法,具体方法如下:该实例采用socket实现,与socket网络编程不一样的是socket.socket(socket.AF_UNIX,socket.SOCK_STREAM)的第一个参数是socket.AF_UNIX而不是socket.AF_INET例中两个python程序s.py/c.py要先运行s.py基于fedora13/python2.6测试,成功实现!s.py代码如下:#!/usr/bin/env

系统 2019-09-27 17:47:14 2155

Python

深入了解Python数据类型之列表

一.基本数据类型整数:int字符串:str(注:\t等于一个tab键)布尔值:bool列表:list(元素的集合)列表用[]元祖:tuple元祖用()字典:dict注:所有的数据类型都存在想对应的类列里二.列表所有数据类型:基本操作:•索引•切片•追加•删除•长度•切片•循环•包含listclasslist(object):"""list()->newemptylistlist(iterable)->newlistinitializedfromiterab

系统 2019-09-27 17:46:22 2155

Python

Python 如何访问外围作用域中的变量

在表达式中引用变量时,Python会按照如下的顺序遍历各个作用域,寻找该变量:当前函数作用域任何外围作用域(比如包含当前函数的其他函数)global作用域,即代码所在的模块的作用域如果上述作用域内都找不到变量,就会报NameError异常。但是对变量赋值时,规则会有所不同。如果当前作用域变量已存在,那么其值会被替换。如果不存在,则会视为在当前作用域定义新变量,而不是向外围作用域中寻找。如下函数deffunction():flag=Truedefhelper

系统 2019-09-27 17:46:14 2155

Python

浅谈Python2之汉字编码为unicode的问题(即类似\xc3\xa4)

Python2中编码相关的问题很是让人蛋疼,特别是中文字符。比如本文所述的中文网页GBK编码的诡异问题。现象例如:盲录�氓��,其实网页里面正常的应该是会员分析接着上面的例子,会员这部分乱码通过repr()函数求值得到如下结果\xc3\xa4\xc2\xbc\xc2\x9a\xc3\xa5\xc2\x91\xc2\x98使用type()函数求值得到的结果为unicodeeval(repr())出来值为盲录�氓��通过查表上述6个汉字对应c3a4c2bcc2

系统 2019-09-27 17:45:40 2155

Python

Python环境下安装使用异步任务队列包Celery的基础教程

1.简介celery(芹菜)是一个异步任务队列/基于分布式消息传递的作业队列。它侧重于实时操作,但对调度支持也很好。celery用于生产系统每天处理数以百万计的任务。celery是用Python编写的,但该协议可以在任何语言实现。它也可以与其他语言通过webhooks实现。建议的消息代理RabbitMQ的,但提供有限支持Redis,Beanstalk,MongoDB,CouchDB,,和数据库(使用SQLAlchemy的或Django的ORM)。celer

系统 2019-09-27 17:38:47 2155

Python

python服务器端收发请求的实现代码

最近学习了python的一些服务器端编程,记录在此。发送get/post请求#coding:utf-8importhttplib,urllib#加载模块#urllib可以打开网站去拿#res=urllib.urlopen('http://baidu.com');#printres.headers#定义需要进行发送的数据params=urllib.urlencode({'param':'6'});#定义一些文件头headers={"Content-Type"

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

Python

python魔法方法-自定义序列详解

自定义序列的相关魔法方法允许我们自己创建的类拥有序列的特性,让其使用起来就像python的内置序列(dict,tuple,list,string等)。如果要实现这个功能,就要遵循python的相关的协议。所谓的协议就是一些约定内容。例如,如果要将一个类要实现迭代,就必须实现两个魔法方法:__iter__、next(python3.x中为__new__)。__iter__应该返回一个对象,这个对象必须实现next方法,通常返回的是self本身。而next方法

系统 2019-09-27 17:37:54 2155

Python

Python使用指定端口进行http请求的例子

使用requests库classSourcePortAdapter(HTTPAdapter):""""Transportadapter"thatallowsustosetthesourceport."""def__init__(self,port,*args,**kwargs):self.poolmanager=Noneself._source_port=portsuper().__init__(*args,**kwargs)definit_poolman

系统 2019-09-27 17:56:58 2154

Python

python实现多线程端口扫描

一个简易的TCP端口扫描器,使用python3实现。需求:扫描目标网站开放哪些端口号,将所有开放的端口号输出。分析:使用socket连接,如果连接成功,认为端口开放,如果连接失败,认为端口关闭(有可能端口开放但连接失败,这里简单认为端口不开放)使用到的库:socket,threading过程:先定义一个函数,对给定的(ip,port)进行扫描,看其是否能连接成功。deftcpPortScan(ip,port,openPort):sock=socket.so

系统 2019-09-27 17:55:41 2154

Python

python pytest进阶之xunit fixture详解

前言今天我们再说一下pytest框架和unittest框架相同的fixture的使用,了解unittest的同学应该知道我们在初始化环境和销毁工作时,unittest使用的是setUp,tearDown方法,那么在pytest框架中同样存在类似的方法,今天我们就来具体说明。先附上官方文档的一段说明1.每个级别的setup/teardown都可以多次复用2.如果相应的初始化函数执行失败或者被跳过则不会执行teardown方法3.在pytest4.2之前,xu

系统 2019-09-27 17:54:40 2154