装饰器是什么?定义:装饰器是用于拓展原函数功能的一种语法,返回新函数替换旧函数作用:在不更改原函数代码的前提下,拓展出新功能@语法:加上@符系统会自动把下面的函数当成参数传递到装饰器中,从下到上.@符又被称作语法糖装饰器:1.普通装饰器defdecor(func):definner():print(“财务拿钱买货”)func()print(“卖货的钱还回来”)returninner@decor#效果等同于sell=decor(sell)defsell():
系统 2019-09-27 17:53:22 2197
列表推导与生成器表达式当我们创建了一个列表的时候,就创建了一个可以迭代的对象:复制代码代码如下:>>>squares=[n*nforninrange(3)]>>>foriinsquares:printi014这种创建列表的操作很常见,称为列表推导。但是像列表这样的迭代器,比如str、file等,虽然用起来很方便,但有一点,它们是储存在内存中的,如果值很大,会很麻烦。而生成器表达式不同,它执行的计算与列表包含相同,但会迭代的生成结果。它的语法与列表推导一样,
系统 2019-09-27 17:53:14 2197
requests库的安装:ubuntu和windows下安装requests库:pipinstallrequestsrequests的介绍:Requests是一个优雅而简单的PythonHTTP库requests的文档:中文版:http://cn.python-requests.org/zh_CN/latest/英文版:http://docs.python-requests.org/en/master/api/requests的基本用法:Get请求:(一)
系统 2019-09-27 17:52:36 2197
对一名开发者来说最糟糕的情况,莫过于要弄清楚一个不熟悉的应用为何不工作。有时候,你甚至不知道系统运行,是否跟原始设计一致。在线运行的应用就是黑盒子,需要被跟踪监控。最简单也最重要的方式就是记录日志。记录日志允许我们在开发软件的同时,让程序在系统运行时发出信息,这些信息对于我们和系统管理员来说都是有用的。就像为将来的程序员写代码文档一样,我们应该让新软件产生足够的日志供系统的开发者和管理员使用。日志是关于应用运行状态的系统文件的关键部分。给软件加日志产生句时
系统 2019-09-27 17:52:07 2197
Python3快速入门(十五)——Pandas数据处理一、函数应用1、函数应用简介如果要将自定义函数或其它库函数应用于Pandas对象,有三种使用方式。pipe()将函数用于表格,apply()将函数用于行或列,applymap()将函数用于元素。2、表格函数应用可以通过将函数对象和参数作为pipe函数的参数来执行自定义操作,会对整个DataFrame执行操作。#-*-coding=utf-8-*-importpandasaspdimportnumpyas
系统 2019-09-27 17:52:01 2197
在用BeautifulSoup进行抓取页面的时候,会各种各样的编码错误。可以通过在beautifulsoup中指定字符编码,解决问题。复制代码代码如下:importurllib2fromBeautifulSoupimportBeautifulSouppage=urllib2.urlopen('http://www.163.com');soup=BeautifulSoup(page,from_encoding="gb2312")printsoup.origi
系统 2019-09-27 17:51:09 2197
环境spyder(python3.6)代码:fromflaskimportFlask,requestimportjsonimportsysdefaultencoding='utf-8'importloggingdeftt(name,age):result_str="%s今年%s岁"%(name,age)returnresult_strapp=Flask(__name__)@app.route("/test_1.0",methods=["GET"])defc
系统 2019-09-27 17:49:36 2197
OS模块基本操作提供对操作系统进行调用的接口importos#导入模块os.getcwd()#获取当前目录(pwd)os.chdir("/Users")#切换到某个指定的目录(cd/Users)os.curdir#返回当前目录('.'、cd.)os.pardir#返回上级目录('..'、cd..)os.makedirs('dirname1/dirname2')#递归创建目录(mkdir-p)os.removedirs('dirname1/dirname2'
系统 2019-09-27 17:49:12 2197
python可以方便地支持多线程。可以快速创建线程、互斥锁、信号量等等元素,支持线程读写同步互斥。美中不足的是,python的运行在python虚拟机上,创建的多线程可能是虚拟的线程,需要由python虚拟机来轮询调度,这大大降低了python多线程的可用性。我们经今天用了经典的生产者和消费者的问题来说明下python的多线程的运用上代码:#encoding=utf-8importthreadingimportrandomimporttimefromQue
系统 2019-09-27 17:48:36 2197
在实验中需要自己构造单独的HTTP数据报文,而使用SOCK_STREAM进行发送数据包,需要进行完整的TCP交互。因此想使用原始套接字进行编程,直接构造数据包,并在IP层进行发送,即采用SOCK_RAW进行数据发送。使用SOCK_RAW的优势是,可以对数据包进行完整的修改,可以处理IP层上的所有数据包,对各字段进行修改,而不受UDP和TCP的限制。下面开始构造HTTP数据包,IP层和TCP层使用python的Impacket库,http内容自行填写。#!/
系统 2019-09-27 17:48:25 2197