为了加快网站的加载速度,我们通常要多js和css进行压缩处理。这些js和css的压缩工作如果都手动处理,费时费力。DjangoCompressor可以实现js/css的自动压缩。DjangoCompressor在易用性方面做的非常好,按照文档做简单的设置后就可以正常工作。强烈建议大家去将文档完整的看一遍(文档很短)。使用的时候,只需要将css/js放到compress标签中DjangoCompressor即可自动进行处理。在debug模式时,DjangoC
系统 2019-09-27 17:46:13 2039
前言由于笔者近期的研究课题与图像后处理有关,需要通过图像处理工具对图像进行变换和处理,进而生成合适的训练图像数据。该系列文章即主要记录笔者在不同的环境下进行图像处理时常用的工具和库。在Python环境下,对图像的处理笔者主要使用Pillow库,主要操作包括对图像的读取、存储和变换等。实际应用中,Pillow中提供的Image模块适合对图像整体进行变换处理操作。注:以下介绍仅包括对应模块和函数的基础用法,故而在介绍时省略了部分参数和选项,更完备的用法和介绍可
系统 2019-09-27 17:45:53 2039
listpython的列表内部实现是数组(具体实现要看解析器,CPython的实现),因此就有数组的特点。超过容量会增加更多的容量,set,get是O(1),但del,insert,in的性能是O(n)。具体的看下表,'n’是容器中当前的元素数,'k’需要操作的元素个数OperationAverageCaseAmortizedWorstCaseCopyO(n)O(n)Append[1]O(1)O(1)InsertO(n)O(n)GetItemO(1)O(1
系统 2019-09-27 17:45:52 2039
有如下的代码:classp1:def__init__(self,a,b):print("initinp1")self.a1=aself.b1=bself.f1()deff1(self):print("f1inp1")classc1(p1):def__init__(self,a,b,c=2):print("initinc1")p1.__init__(self,a,b)self.c1=cself.f1()deff1(self):print("f1inp2")c
系统 2019-09-27 17:38:39 2039
测了一下django、flask、bottle、tornado框架本身最简单的性能。对django的性能完全无语了。django、flask、bottle均使用gunicorn+gevent启动,单进程,并且关闭DEBUG,请求均只返回一个字符串ok。tornado直接自己启动,其他内容一致。测试软件为siege,测试os为cenos664位,测试命令为:复制代码代码如下:siege-c100-r100-bhttp://127.0.0.1:5000/dja
系统 2019-09-27 17:38:25 2039
1.os.path.driname(path):返回路径的上一级路径字符串。>>>os.path.dirname('D:\Games')'D:\\'>>>2.os.path.basename(path):返回路径的最后一级目录名(文件夹名)或文件名(全称)。>>>os.path.basename('D:\Games\9yin_632\蜗牛整包\\0x0804.ini')'0x0804.ini'>>>3.os.path.splitext(file_name)
系统 2019-09-27 17:38:14 2039
1、局部变量foriinrange(5):printi,printi,运行结果:012344i是for语句里面的局部变量。但在python里面,在同一方法体内,定义了一个局部变量,该变量的作用域是定义行开始至该方法体结束。在其他编程语言,“printi”那一句是有误的,因为i没有定义例1:deffunc():a=100ifa>50:b=Trueprintbif__name__=='__main__':func()结果:True例2:deffunc():a=
系统 2019-09-27 17:37:35 2039
前言Http协议除了get和post,还可以做更多的事情,一直以来,很多的开发人员都忘了这一点。但是,如果你知道浏览器其实只支持get和post,那么你就不会感到惊奇了。get和post是http请求从客户端传到服务器端的两个方法。除了这两个,http协议还知道put和delete方法,这两个方法告诉服务器创建或者删除一个WEB的资源。这个教程的目的,就是扩展开发人员的视线,去了解http协议的put和delete方法。我们常说的REST这个术语,精华就是
系统 2019-08-29 23:32:02 2039
今天在服务器上用命令行的方式操作了一下memcache,主要是操作了setaddreplacedeleteincrdecr几个命令具体的格式就不详细说明了,网上一搜一大把。发现了一个问题就是当我incrkey1的时候,不论memcache里之前存放的是什么内容,之后都会将value转变成1,而其中的字节数一如既往的是之前设定的字节数,比如这样不知道这是不是memcache的一个bug还是设计人员有意追求的一个效果,明天来接着研究。当然,还有就是如果valu
系统 2019-08-29 23:16:00 2039
当我们再对liferay源代码进行研究或者对某个类进行修改的时候很不方便,所以我们需要搭建一个开发环境,这样在修改liferay源代码的时候就更加方便。下面我们会一步步搭建liferay的开发环境。一、准备工作1、下载下列文件,下载步骤这里省略:jdk-1_5_0_06-windows-i586-p.exeliferay-portal-tomcat-jdk5-
系统 2019-08-29 23:15:41 2039