赞
赏
具有相同特性(数据元素)和行为(功能)的对象的抽象就是类。因为类本身只是一个抽象,因此并不能直接拿来用,我们必须先定义类,然后根据类创建 对象,然后才可以使用对象里面的 属性 和 方法。
Python 中定义类有两种方法,一种是使用 class 关键字,一种是使用 type 来创建,一般第二种很少使用。
class ClassName:
propertoy list
function list
参数 | 描述 |
---|---|
class | 定义类使用的关键字。 |
ClassName | 类名。 |
使用 class 关键字,定义一个类,类的首字母一般都大写,接着,我们就可以在类里面定义属性和方法。
Foo = type('Foo', (object,), {'talk':func})
使用 type 关键字,定义一个类 Foo,该类有一个 talk 方法。其中,type 函数的第一个参数是类名,第二个参数是类的父类,第三个参数是类的方法。
使用 class 关键字,定义一个Student类
print("嗨客网(www.haicoder.net)")
class Student:
def sayHello(self):
print("Hello, HaiCoder")
stu = Student()
stu.sayHello()
程序运行后,控制台输出如下:
我们创建了一个类 Student,类中有一个方法 sayHello,接着,我们创建了一个 Student 类的对象 stu,并调用对象的 sayHello 方法。
我们看到,程序输出了类 Student 的方法 sayHello 里面的内容。
使用 type 关键字,定义一个 Student 类
print("嗨客网(www.haicoder.net)")
def func(self):
print('hello %s' % self.name)
def __init__(self, name, age): # 初始化方法
self.name = name
self.age = age
# type('叫什么的类', '继承谁', '它里面有哪些方法')
Foo = type('Foo', (object,), {'talk': func, '__init__': __init__})
f = Foo('haicoder', '18')
f.talk()
print(type(Foo))
程序运行后,控制台输出如下:
我们使用 type 关键字,创建了一个类 Foo,类中有两个方法,分别为 talk 和 init,其中,类 Foo 的父类是 object。
最后,我们创建了一个类 Foo 的对象 f,并调用其 talk 方法。
具有相同特性(数据元素)和行为(功能)的对象的抽象就是类。因为类本身只是一个抽象,因此并不能直接拿来用,我们必须先定义类,然后根据类创建对象,然后才可以使用对象里面的属性和方法。
Python 定义类语法:
class ClassName:
propertoy list
function list
Python 使用 type 定义类语法:
Foo = type('Foo', (object,), {'talk':func})