一 介绍
在类的内部,使用def关键字可以为类定义一个方法,与一般函数定义不同,类方法必须包含参数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))
# 实例化类
p = people('cakin24',10,30)
p.speak()
三 运行结果
cakin24 说: 我 10 岁。
四 类的私有方法
1、介绍
类的私有方法以双下划线开始。
在类的内部调用私有方法,要在私有方法前加“self.”。
2、代码示例
>>>class book:
__author =''
__name =''
__page =0
price =0
__press =''
def __check(self,item):
if item =='':
return0
else:
return1
def show(self):
if self.__check(self.__author):
print(self.__author)
else:
print('No values')
if self.__check(self.__name):
print(self.__name)
else:
print('No value')
def setname(self,name):
self.__name = name
>>> a = book()
>>> a.show()
No values
No value
>>> a.setname('cakin24')
>>> a.show()
No values
cakin24
>>> a.__check()
Traceback(most recent call last):
File"<pyshell#42>", line 1,in<module>
a.__check()
AttributeError:'book' object has no attribute '__check'