天天看点

Python面向对象-类的定义(七)!/usr/bin/python3实例化类

!/usr/bin/python3

class MyClass:

“”“一个简单的类实例”""

i = 123456

def f(self):

return “hello world”

#实例化类

x = MyClass()

#访问类的属性和方法

print(“MyClass类的属性i为:”,x.i)

print(“MyClass类的方法f为:”,x.f())

########################################################################

‘’’

类有一个名为 init() 的特殊方法(构造方法),该方法在类实例化时会自动调用,像下面这样:

def init(self):

self.data = []

类定义了 init() 方法,类的实例化操作会自动调用 init() 方法。如下实例化类 MyClass,对应的 init() 方法就会被调用:

x = MyClass()

‘’’

class Complex:

def init(self, realpart, imagpart):

self.r = realpart

self.i = imagpart

x = Complex(3.0, -4.5)

print(x.r, x.i) # 输出结果:3.0 -4.5

########################################################################

‘’’

类的方法

在类的内部,使用 def 关键字来定义一个方法,与一般函数定义不同,类方法必须包含参数 self, 且为第一个参数,self 代表的是类的实例。

‘’’

#类定义

class people:

#定义基本属性

name = ‘’

age = 0

#定义私有属性,私有属性在类外部无法直接进行访问

__weight = 0

#定义构造方法

def init(self,n,a,w):

self.name = n

self.age = a

self.__weight = w

def speak(self):

print("%s 说: 我 %d 岁。" %(self.name,self.age))

def speak_w(self):

return self.__weight

实例化类

p = people(‘admin’,10,30)

p.speak()

w1 = p.speak_w()

print(w1)