小方哥哥 2020-06-07
1.面向对象思维,关于self的认识
(1)类的基本形式:
class 类名:
def 方法:
pass
实例:
# 基本格式,类中的方法与函数类似,但是参数中多了self参数 class boj: def mot(self,arg): print(self,arg) pass boj().mot(‘q‘)print(boj())
打印结果
<__main__.boj object at 0x0000000002808978> q<__main__.boj object at 0x00000000021E8978>
(2)如上打印结果,可看出self其实指代实例化的对象,也就说指代boj(),如果有多个对象也就分别代表实例化的对象本身,与这个类没有关系如下代码:
class boj: def mot(self,arg): print(self,arg) pass num1=boj() num1.mot(‘q‘) print(num1) print(‘-------我是分割线---------‘) num2=boj() num2.mot(‘m‘) print(num2)
打印结果:
<__main__.boj object at 0x00000000021F7160> q <__main__.boj object at 0x00000000021F7160> -------我是分割线--------- <__main__.boj object at 0x00000000021F7278> m <__main__.boj object at 0x00000000021F7278>
(3)关于参数,对象自定义的参数,在方法中可以通过self.参数,调用
class Army: def moth_01(self,arg): print(arg,self.name) obj_01=Army() obj_01.name=‘TOM‘ obj_01.moth_01(‘hello,‘)
打印结果:
hello, TOM
------------恢复内容结束------------