前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python类

Python类

原创
作者头像
陈不成i
修改2021-06-18 18:08:59
6780
修改2021-06-18 18:08:59
举报
文章被收录于专栏:ops技术分享ops技术分享

一.类基础

  1. #类
  2. class Dog(): #定义
  3. def __init__(self,name): #初始化属性,self赋值后,所有方法都可以用
  4.         self.name = name
  5. def sit(self): #获取属性
  6. print(self.name.title() + " is now sitting.")
  7. my_dog = Dog('wang') #调用方法
  8. my_dog.sit()
  9. my_dog.name = xx #直接修改赋值
  10. print(my_dog.name) #只打印变量
  11. #类继承
  12. class A_Dog(Dog):
  13. def __init(self,name): #父类有的那些参数
  14.     super().__init__(name) #初始化父类的那些参数,这样父类参数可以懒得写slef.xx=xx
  15.     self.xx = xx #子类自己的变量
  16. def sit(self): #和父类重名,将直接覆盖
  17. #对方法进行定义属性,可以方法定义return 2*,这样实时更新结果
  18. name = property(get_name, set_name) #套入方法
  19. xx = abc('nginx')
  20. xx.name = 'xx' #赋值操作时,set_name就会被调用
  21. @property #在修改函数的上面套用,类似get
  22. @name.setter #类似set
  23. #类拆分
  24. class B_Dog():
  25.     self.adog = A_Dog() #将类赋值
  26. b.adog.sit() #调用
  27. self.__name = xxx #禁止外部调用 xx.name方式调用
  28. fowl._Duck__name #查看类别
  29. @classmethod #类方法
  30. def xx(cls):
  31. print(cls.count) #打印有几个类引用
  32. 类名.xx() #调用
  33. @staticmethod #静态方法,直接对象.xx调用,不用赋值
  34. def commercial():
  35. print('This CoyoteWeapon has been brought to you by Acme')

二.特殊方法

  1. class Word():
  2. def __init__(self, text):
  3.         self.text = text
  4. def __eq__(self, word2): #不用再带入类,word2是类名
  5. return self.text.lower() == word2.text.lower() #和别的类text比较
  6. xx == dd #类直接比较

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一.类基础
  • 二.特殊方法
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档