码迷,mamicode.com
首页 > 其他好文 > 详细

初始面向对象

时间:2019-03-28 21:50:50      阅读:204      评论:0      收藏:0      [点我收藏+]

标签:列表   面向对象   *args   agg   python   执行   das   weakref   %s   

python中一切皆对象

如  字典——类    {‘k’:‘v‘} ——对象

列表 —— 类        [1,2 ]—— 对象

 

自定义 类

class 类名:

    属性 = ‘初始攻击力5’

print(类名.属性)   类名的作用,就是操作属性 查看属性

 1 class Person:  # 类名
 2     country = China   # 创造了一个只要是这个类就一定有的属性
 3                         # 类属性 静态属性
 4     def __init__(self,*args):    # 初始化方法 self是对象,是一个必须传的参数
 5         # print(self.__dict__)   # self 就是一个可以存储很多属性的大字典
 6         self.name = args[0]   # 往字典里添加属性的方式发生了一些变化
 7         self.hp = args[1]
 8         self.aggr = args[2]
 9         self.sex = args[3]
10         # print(self.__dict__)
11     def walk(self,n):  # 方法,一般情况下必须传self参数,且必须写在第一个
12                         # 后面还可以传其他参数,这是自由的
13         print(%s走走走,走了%s步 %(self.name,n))
 1 print(Person.country)  # 类名可以查看类中的属性,不需要实例化就可以查看
 2 alxe = Person(狗剩儿,100,1,不详) #类名还可以实例化 对象 # 实例化
 3 print(alxe.__dict__)  #对象通过__dict__方法可以查看所有属性
 4 结果:{name: 狗剩儿, hp: 100, aggr: 1, sex: 不详}
 5 print(Person.__dict__)  #  类名.__dict__ 查看这个类所拥有的方法
 6 结果:{__module__: __main__, country: China, 
 7 __init__: <function Person.__init__ at 0x0000000001E686A8>,
 8  walk: <function Person.walk at 0x0000000001E68730>,
 9  __dict__: <attribute __dict__ of Person objects>, 
10 __weakref__: <attribute __weakref__ of Person objects>, __doc__: None}
11 print(Person.__dict__[country])
12 结果:China
13 alxe.walk(6) # Person.walk(alxe)  # 调用方法 类名.方法名(对象名)
14 print(alxe.__dict__[name])  
15 结果:狗剩儿
16 alxe.__dict__[name] = 二哥   # 修改 alxe 的name属性 为二哥 
17 print(alxe.__dict__)   
18 结果:{name: 二哥, hp: 100, aggr: 1, sex: 不详}
19 print(alxe.name)
20 结果:二哥
21 alxe.name = 二哥   # 也可以通过 对象.属性名 =‘‘  直接对对象的属性赋值
22 print(alxe.name)
23 结果:二哥
对象 = 类名()

过程:
  类名() 首先会创造出一个对象,创建了一个self变量
  调用init方法,类名括号里的参数会被这里接收
  执行init方法
  返回self
对象能做的事:
  1.查看属性
  2.调用方法
  3.__dict__对于对象的增删改查操作都可以通过字典的语法进行操作

类名能做的事:
  1.实例化
  2.调用方法,只不过要自己传递self参数
  3.调用类中的属性,也就是调用静态属性
  4.__dict__对于类中的名字只能看 不能操作

 

 




初始面向对象

标签:列表   面向对象   *args   agg   python   执行   das   weakref   %s   

原文地址:https://www.cnblogs.com/ys-python/p/10617862.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!