00105 python类

就是一类东西的总称,创建一个类,然后在类里面创建对象,这些对象就会自动具有该类的所有属性

class Dog():  #创建类 给出类名Dog——根据约定,在Python中,首字母大写的名称指的是类。

     def __init__(self, name, age): #注意前后各有两个下划线,代表这是默认的方法,在该类下创建任何对象时,都将自动运行该方法。
          """初始化属性name和age"""
          """第一个参数self由程序自动给出,不需要赋值,
             它代表的是我们创建的对象,作为self参数,代进类定义里的所有函数之中,从拥有该类所有属性
             因此,类定义里的每一个函数,都有一个self参数,而且必须放在第一位"""
          self.name = name
          self.age = age  #由于初始化方法自动运行,每一个小狗对象都将有一个名字和年龄

     def sit(self):
          """模拟小狗被命令时蹲下"""
          print(self.name.title() + " is now sitting.")

     def roll_over(self):
          """模拟小狗被命令时打滚"""
          print(self.name.title() + " rolled over!")

mydog=dog('harry',6)  #类的实例化——创建一个实例
     #在创建实例时,必须要给出__init__方法所需的所有参数,否则报错
print(mydog.name) #>>>harry 该实例拥有了name属性,可以访问

类的继承——将一个类的属性赋给另一个类(而不是给它的实例们),被继承的类是父类,继承的类是子类

#定义父类
class Man():
     def __init__(self,sex,age):
          self.sex=sex
          self.age=age

#定义子类
class Chinese(Man): #注意:定义子类与父类的区别就是括号里要给出父类名称
     def __init__(self,sex,age,nation):
          super().__init__(self,sex,age)  #super就是父类的意思
          self.nation=nation

zhangsan=Chinese('F',28,'China')
print(zhangsan.sex)  >>>'F'  #引用父类的属性,方法也可以引用,在此不予列出
print(zhangsan.age)  >>>28 
print(zhangsan.nation)  >>>'China'

#在子类的定义里如果有跟父类定义里方法名一样的方法,相当于修改了继承而来的方法,以后的调用将以子类定义内的方法为准

类的嵌套:
通过将一个类的属性,定义为另一个类,可以实现嵌套
     self.attr = anotherclass()

类的模块化:将定义好的类存为一个单独的.py文件,使其变成一个独立的模块
模块导入: from module_name import class_name1, class_name2

TIPS:
  • 命名原则:类名应采用驼峰命名法,即将类名中的每个单词的首字母都大写,而不使用下划线。实例名和模块名都采用小写格式,并在单词之间加上下划线。
  • 注释:定义类后给出注释,简要描述其功能
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值