super的工作原理如下:defsuper(cls,inst):mro=inst.__class__.mro()returnmro[mro.index(cls)+1]其中,cls代表类,inst代表实例,上面的代码做了两件事:获取inst的MRO列表查找cls在当前MRO列表中的index,并返回它的下一个类,即mro[index+1]当你使用super(cls,inst)时,Python会在inst的MRO列表上搜索cls的下一个类。下面看一个例子:cl
系统 2019-09-27 17:47:45 2142
最近开发一套接口,写个Python脚本,使用requests.session模拟一下登录.因为每次需要获取用户信息,登录需要带着session信息,所以所有请求需要带着session。请求使用post方式,请求参数类型为raw方式,参数为json类型。登录接口参数和结果如下:脚本如下:1.引入需要的第三方包#!/usr/bin/envpython3#-*-coding:utf-8-*-importrequests#importreimportjson#fr
系统 2019-09-27 17:47:31 2142
multiprocessing.Pipe([duplex])返回2个连接对象(conn1,conn2),代表管道的两端,默认是双向通信.如果duplex=False,conn1只能用来接收消息,conn2只能用来发送消息.不同于os.open之处在于os.pipe()返回2个文件描述符(r,w),表示可读的和可写的实例如下:复制代码代码如下:#!/usr/bin/python#coding=utf-8importosfrommultiprocessingi
系统 2019-09-27 17:47:09 2142
概述在我们使用内置打印函数print时,打印出的Python数据结构对象总是一行的输出的方式,这样对数据结构较复杂或数据较多的对象的显示并不美观,这时我们可以利用pprint输出美化数据结构对象。pprint方法概览美化输出我们可以利用pprint中的PrettyPrinter控制输出的打印时的缩进,行宽、甚至打印深度等,定义类如下classpprint.PrettyPrinter(indent=1,width=80,depth=None,stream=N
系统 2019-09-27 17:45:58 2142
python中字典可以一键多值,也就是意味着一个键可以对应多个值。例:#encoding=utf-8print'中国'#字典的一键多值print'方案一list作为dict的值值允许重复'd1={}key=1value=2d1.setdefault(key,[]).append(value)value=2d1.setdefault(key,[]).append(value)printd1#获取值print'方案一获取值'printlist(d1[key])
系统 2019-09-27 17:38:14 2142
总的感觉,python本身并没有对二进制进行支持,不过提供了一个模块来弥补,就是struct模块。python没有二进制类型,但可以存储二进制类型的数据,就是用string字符串类型来存储二进制数据,这也没关系,因为string是以1个字节为单位的。importstructa=12.34#将a变为二进制bytes=struct.pack('i',a)此时bytes就是一个string字符串,字符串按字节同a的二进制存储内容相同。再进行反操作现有二进制数据b
系统 2019-09-27 17:38:12 2142
近几日遇到采集某网页的时候大部分网页OK,少部分网页出现乱码的问题,调试了几日,终于发现了是含有一些非法字符造成的..特此记录1.在正常情况下..可以用importchardetthischarset=chardet.detect(strs)["encoding"]来获取该文件或页面的编码方式或直接抓取页面的charset=xxxx来获取2.遇到内容中有特殊字符时指定的编码一样会造成乱码..即内容中非法字符造成的,可以采用编码忽略非法字符的方式来处理.st
系统 2019-09-27 17:38:01 2142
在python用import或者from...import来导入相应的模块。模块其实就是一些函数和类的集合文件,它能实现一些相应的功能,当我们需要使用这些功能的时候,直接把相应的模块导入到我们的程序中,我们就可以使用了。这类似于C语言中的include头文件,Python中我们用import导入我们需要的模块。eg:复制代码代码如下:importsysprint('================Pythonimportmode==============
系统 2019-09-27 17:37:55 2142
关键字:Draw2d,连线,ChopboxAnchorEllipseAnchor连线一提到的连线其实并没有连接到图形的边框上,这个问题主要取决于锚点(Anchor)。如果将代码中的椭圆改为正圆就很容易看出来了。publicclassHelloWorld2{publicstaticvoidmain(Stringargs[]){Shellshell=newShell();shell.setText("Draw2dHelloWorld");shell.setSi
系统 2019-08-29 23:50:49 2142
工作环境:IDE:Eclipse3.1.2jdk:jdk1.5.0_06Tomcat:apache-tomcat-5.5.15AXIS2:1.0(war版本和bin版本)环境准备:http://ws.apache.org/axis2/download/1_0/download.cgi去下载AXIS2的BinaryDistributionurl:http://apache.justdn.org/ws/axis2/1_0/axis2-std-1.0-bin.z
系统 2019-08-29 23:47:04 2142