Python面向对象编程——多态、多态性、鸭子类型一、多态多态指的是一类事物有多种形态,比如动物有多种形态:人,狗,猪importabcclassAnimal(metaclass=abc.ABCMeta):#同一类事物:动物@abc.abstractmethoddeftalk(self):passclassPeople(Animal):#动物的形态之一:人deftalk(self):print('sayhello')classDog(Animal):#动物
系统 2019-09-27 17:53:42 1978
1.python2/3区别整除python2:print'3/2=',3/2print'3//2=',3//2print'3/2.0=',3/2.0print'3//2.0=',3//2.0结果:3/2=13//2=13/2.0=1.53//2.0=1.0python3:print('3/2=',3/2)print('3//2=',3//2)print('3/2.0=',3/2.0)print('3//2.0=',3//2.0)3/2=1.53//2=13
系统 2019-09-27 17:53:32 1978
classRoom:def__init__(self,name,length,width):self.__name=nameself.__length=lengthself.__width=widthdefget_name(self):returnself.__namedefset_name(self,newName):iftype(newName)isstrandnewName.isdigit()==False:self.__name=newNameel
系统 2019-09-27 17:53:27 1978
填充螺旋演示结果:实例代码:importmatplotlib.pyplotaspltimportnumpyasnptheta=np.arange(0,8*np.pi,0.1)a=1b=.2fordtinnp.arange(0,2*np.pi,np.pi/2.0):x=a*np.cos(theta+dt)*np.exp(b*theta)y=a*np.sin(theta+dt)*np.exp(b*theta)dt=dt+np.pi/4.0x2=a*np.cos
系统 2019-09-27 17:52:35 1978
在上一篇文章中,我们讲了如何在linux上用python写一个守护进程。主要原理是利用linux的fork函数来创建一个进程,然后退出父进程运行,生成的子进程就会成为一个守护进程。细心观察的可能会发现,这个守护进程的运行身份是执行这个程序的用户,如果把这个守护程序加入到系统的服务项,那么这个守护程序的执行身份应该是root。一个情况出现了,root的权限比较大,如果通过这个root身份的守护程序来进行操作,危险性是比较大的。一种好的办法是生成一个身份为ro
系统 2019-09-27 17:52:32 1978
本文实例讲述了Python闭包和装饰器用法。分享给大家供大家参考,具体如下:Python的装饰器的英文名叫Decorator,作用是完成对一些模块的修饰。所谓修饰工作就是想给现有的模块加上一些小装饰(一些小功能,这些小功能可能好多模块都会用到),但又不让这个小装饰(小功能)侵入到原有的模块中的代码里去。闭包1.函数引用#coding=utf-8deftest1():print('Thisistest1!')#调用函数test1()#引用函数ret=test
系统 2019-09-27 17:52:24 1978
#下载一个网页importrequestsimportreurl='https://www.biquge5200.cc/14_14621/'#模拟浏览器发送http请求response=requests.get(url)#编码方式response.encoding='utf-8',如果下载下来的网页内容有中文乱码现象就需要加上这一句话#网页源码html=response.text#[0]取列表下第0个元素.#eg:title的输出结果为:['斗神狂飙无弹窗
系统 2019-09-27 17:52:18 1978
实现一个支持动态扩容的数组并完成其增删改查#通过python实现动态数组"""数组特点:占用一段连续的内存空间,支持随机(索引)访问,且时间复杂度为O(1)添加元素时间复杂度:O(n)删除元素时间复杂度:O(n)"""classArr:def__init__(self,capacity=10):"""构造函数:paramcapacity:数组最大容量,不指定的话默认为10"""self._capacity=capacityself._size=0#数组有效
系统 2019-09-27 17:52:16 1978
Python装饰器是一个消除冗余的强大工具。随着将功能模块化为大小合适的方法,即使是最复杂的工作流,装饰器也能使它变成简洁的功能。例如让我们看看Djangoweb框架,该框架处理请求的方法接收一个方法对象,返回一个响应对象:defhandle_request(request):returnHttpResponse("Hello,World")我最近遇到一个案例,需要编写几个满足下述条件的api方法:返回json响应如果是GET请求,那么返回错误码做为一个注
系统 2019-09-27 17:52:01 1978
前言知识在于细节,整理很重要。在python中,有3类方法:1)静态方法(staticmethod)2)类方法(classmethod)3)实例方法其中静态方法和类方法是不需要进行实例就可以直接调用,语法格式:类名.方法名具体举个例子说明deffunc(x):print("hello,我是常用方法")classFun:deffunc1(self,x):print("hello,我是类中方法",x,self)@classmethoddeffunc2(cls,
系统 2019-09-27 17:51:55 1978