Python技术分享—类和实例

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/TT789789789/article/details/94609907

类是抽象的模板,用来描述具有相同属性和方法的对象的集合,比如Animal类。 类名通常采用驼峰式命名方式,尽量让字面意思体现出类的作用。

图片.png

Python使用class关键字来定义类,其基本结构如下:

class 类名(父类列表):
 pass

类的构成

类(class)由3个部分构成

类的名称:类名

类的属性:一组数据

类的方法:允许对进行操作的方法

人类的设计:

事物名称(类名):人(Person)

属性:身高(height)、年龄(age)

方法:跑(run)、吃(eat)

定义一个类

class People:
 # 属性
 # 方法
 def eat(self): 
 print("人在吃....")
 def drink(self):
 print("人在喝.....")

定义类时有2种:新式类和经典类,上面的People为经典类,如果是People(object)则为新式类

类名 的命名规则按照"大驼峰"

创建对象

tom = People()

调用对象的方法

class Cat:
 # 属性
 # 方法
 def eat(self):
 print("猫在吃....")
 def drink(self):
 print("猫在喝")
tom = Cat() 
# 调用tom指向的对象中的方法
tom.eat()
tom.drink()

给对象添加属性

属性简单来说,就是变量。

# 给tom指向的对象添加2个属性
tom.name = "汤姆"
tom.age = 18

获取属性的方法

class Cat:
 # 属性
 # 方法
 def eat(self):
 print("猫在吃....")
 def drink(self):
 print("猫在喝")
 def info(self):
 print("%s的年龄是:%d"%(tom.name,tom.age))

tom = Cat()
tom.name = "汤姆"
tom.age = 18
# print("%s的年龄是:%d"%(tom.name,tom.age))
tom.info()
lanmao = Cat()
lanmao.name = "蓝猫"
lanmao.age = 20
lanmao.info()

init方法

调用对象时自动执行的一个方法。也称之为魔法方法

class Cat:
 # 初始化对象
 def __init__(self,new_name,new_age):
 self.name = new_name
 self.age = new_age
 # 方法
 def eat(self):
 print("猫在吃....")
 def drink(self):
 print("猫在喝")
 def info(self):
 print("%s的年龄是:%d"%(self.name,self.age))
tom = Cat("汤姆",18)
# tom.name = "汤姆"
# tom.age = 18
tom.info() 
lanmao = Cat()
# lanmao.name = "蓝猫"
# lanmao.age = 20
lanmao.info()

str方法

class Cat:
 # 初始化对象
 def __init__(self,new_name,new_age):
 self.name = new_name
 self.age = new_age

 def __str__(self):
 return "%s的年龄是:%d"%(self.name,self.age)
 # 方法
 def eat(self):
 print("猫在吃....")
 def drink(self):
 print("猫在喝")
 def info(self):
 print("%s的年龄是:%d"%(self.name,self.age))
tom = Cat("汤姆",18)
print(tom)

(写在最后,由于以后每天晚上九点半之后会更新Python基础的知识点,记得来看哦!)
此文来源于微博和今日头条:逻二妞,转载请注明出处,谢谢

推荐阅读

改变世界到语言—python,看完才知道从事python凭什么高薪!(2019年最新三大方向资源)

这本书教你读懂大脑中的神经元,并一个月内掌握Python基础,经典

猜你喜欢

转载自blog.csdn.net/TT789789789/article/details/94609907