python函数修饰符@的作用是为现有函数增加额外的功能,常用于插入日志、性能测试、事务处理等等。创建函数修饰符的规则:(1)修饰符是一个函数(2)修饰符取被修饰函数为参数(3)修饰符返回一个新函数(4)修饰符维护被维护函数的签名例子1:被修饰函数不带参数deflog(func):defwrapper():print('log开始...')func()print('log结束...')returnwrapper@logdeftest():print('te
系统 2019-09-27 17:54:36 2263
师父布置的任务,让我写一个服务练练手,搞清楚socket的原理和过程后跑了一个小demo,很有成就感,代码内容也比较清晰易懂,很有教育启发意义。代码#coding:utf-8importsocketfrommultiprocessingimportProcessHTML_ROOT_DIR=""defhandle_client(client_socket):"""处理客户端请求"""#获取客户端请求数据request_data=client_socket.r
系统 2019-09-27 17:53:32 2263
一、异常1.1异常介绍异常就是程序运行时发生错误的信号,在python中,错误触发的异常如下:1.2异常种类在python中不同的异常可以用不同的类型(python中统一了类与类型,类型即类)去标识,不同的类对象标识不同的异常,一个异常标识一种错误1#触发IndexError2l=['egon','aa']3l[3]45#触发KeyError6dic={'name':'egon'}7dic['age']89#触发ValueError10s='hello'1
系统 2019-09-27 17:52:31 2263
先看map。map()函数接收两个参数,一个是函数,一个是序列,map将传入的函数依次作用到序列的每个元素,并把结果作为新的list返回。举例说明,比如我们有一个函数a(x)=x*2,要把这个函数作用在一个list[1,2,3,4,5]上,就可以用map()实现如下:复制代码代码如下:>>>defa(x):...returnx*2...>>>map(a,[1,2,3,4,5])[2,4,6,8,10]map传入的第一个参数a,即a函数,当然你也可以不用ma
系统 2019-09-27 17:52:06 2263
测试1deco运行,但myfunc并没有运行复制代码代码如下:defdeco(func):print'beforefunc'returnfuncdefmyfunc():print'myfunc()called'myfunc=deco(myfunc)测试2需要的deco中调用myfunc,这样才可以执行复制代码代码如下:defdeco(func):print'beforefunc'func()print'afterfunc'returnfuncdefmyfu
系统 2019-09-27 17:51:53 2263
CSRF(CrossSiteRequestForgery,跨站域请求伪造)是一种网络的×××方式。我的理解是,比如你访问过招商银行的网站并登陆之后,你的cookie信息暂时不会失效,这时,hacker通过各种方式诱导你访问他给你提供的网站等链接,让你在同一浏览器访问hacker给你的网站时,那么他给你提供的网站里面有直接有向招商银行提交转账信息的请求,这时,这个转账请求会借用你刚刚登陆过招商银行的cookie信息,来使用的你的身份进行合法的转账。那么为了减
系统 2019-09-27 17:50:35 2263
原文链接:https://blog.csdn.net/m0_37586991/article/details/81629421近期在写dataloader函数时,由于错用了extend和append,导致后面出现了bug。后面发现问题后,便将该问题记录下来防止重复出错。两个函数从功能上来看非常类似,但处理后的结果却完全不同,使用时需要特别注意。尤其是对多个的list进行合并时,append可以保持list的原始形式,extend则进行了拆分重组,将待添加的
系统 2019-09-27 17:50:26 2263
logging的基本用法网上很多,这里就不介绍了。在引入正文之前,先来看一个需求:假设需要将某功能封装成类库供他人使用,如何处理类库中的日志?数年前在一个C#开发的项目中,我用了这样的方法:定义一个logging基类,所有需要用到日志的类都继承这个基类,这个基类中定义一个LogHandler事件,该事件用于实现具体的记录日志动作,同时可以通过将类A的LogHandler委托挂到类B的LogHandler上,实现将两个类的日志信息添加到一起。自从看了pyth
系统 2019-09-27 17:50:05 2263
下面一段代码给大家介绍python处理微信对账单数据,具体代码如下所示:#下载对账单并存储到数据库@app.route("/bill/",methods=["GET","POST"])defdownload_bill(date):pay=MyWeiXinPay()#自己的支付类bill=pay.download_mybill(date)#下载原始对账单,下载下来为字符串billArray=bill.split("\r\n")#分割账单,一行为一组数据,分割
系统 2019-09-27 17:48:58 2263
Recursivearticles(递归篇)Feibosequencedeffib(number):ifnumber==0ornumber==1:returnnumberelse:returnfib(number-1)+fib(number-2)foriinrange(8):print("fib(%2d)=%2d"%(i,fib(i)))Wecancontrolthetimeofthefunction.deffib(number):ifnumber==0o
系统 2019-09-27 17:48:41 2263