-
Python中的类和对象
Python是一种面向对象的语言,Python中的任何东西都是一个对象,拥有它自己的属性和方法。例如Python中的列表,列表拥有自己的属性,如列表是有序的、可重复的、可更改的,列表有自己的方法,如append()方法可以向列表中添加元素。
在Python中,可以自定义类,并赋予其基本属性和方法,然后直接创建属于这一类的对象。
用关键词class来创建类,并通过类名来创建属于这一类的对象。
#创建类
class MyClass:
x=5
#创建属于MyClass的对象p1,由于p1属于MyClass,p1拥有MyClass的所有属性和方法
p1=MyClass()
print(p1.x)#结果为5上述的例子为最简单的类,即类的属性只有x=5,在真实应用中,所有的类都有内置函数__init__(),利用该函数设置类中对象的属性,另外可在类中建立函数描述对象的方法
class Person:
def __init__(self,name,age):#self代表属于该类的对象,可替换为其他任意字符,如i、x、mn等
self.name=name#指定类中对象self的name属性为传入的参数name
self.age=age#指定类对象self的age属性为传入的参数age
def myfunc(self):#定义类中的方法,self代表类中的对象
print("Hello, my name is " + self.name)#该方法为打印一句话
p1=Person("John",36)#创建属于Person类的一个对象p1,并传入参数John和36,在类内部,John被赋值给p1.name,而36被赋值给p1.age,同时类内的方法myfunc可打印一句话
print(p1.name)#结果为John
print(p1.age)#结果为36
p1.myfunc()#结果为Hello, my name is John
p1.age=40#改变对象的参数
print(p1.age)#结果为40
del p1.age#删除对象p1的age参数
print(p1.age)#会报错,因为p1的参数不全
del p1#删除对象 -
Python中的类的继承(Inheritance)
python中能够从一个类中继承所有的属性和方法,建立新的类,其中被继承的类称为父类(Parent class),而新的类称为子类(Child class),子类中可以增加新的属性和方法
#创建父类
class Person:
def __init__(self,name,age):
self.name=name
self.age=age
def introduce(self):
print("My name is " + self.name + " and i am " + str(self.age) + " years old.")
x=Person("John",36)
x.introduce()#结果为My name is John and i am 36 years old.
#创建子类Teacher,不添加新的属性和方法
class Teacher(Person):
pass
#创建子类Person1,添加新的属性和方法
class Person1(Person):
def __init__(self,name,age,job):#在子类中定义__init__函数时会覆盖父类的__init__,如果想从中继承父类的属性,则需用super()
super().__init__(name,age)#从父类中继承所有参数
self.job=job#在子类中创建新参数
def introduce(self):#直接在子类中创建同名方法,会覆盖父类中的同名方法
print("My name is " + self.name + ". I am " + str(self.age) + " years old. I am a " + self.job + ".")
x=Person1("Mike",26,"doctor")
x.introduce()#结果为My name is Mike. I am 26 years old. I am a doctor.
原文始发于微信公众号(BioInfo):W3Schools-Python基础6
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/238176.html