作者:苏格兰的秋天 | 来源:互联网 | 2023-05-17 22:40
这篇文章主要介绍Animal怎么修改python3中的类,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
python中的一个类中有属性和方法,而二者都分为很多种类型,如下所示
属性分为普通属性和类属性
方法分为普通方法、类方法、静态方法。
具体定义方法和使用见下面的代码和注释,各个属性和方法的使用习惯等见最后的 print_animal 函数打印出的结果
下面是类的定义
class Animal:
# 这里是属性定义
actually = "animal" # 类属性
def __init__(self, name, age): # 定义实例时,放在括号里的才要指定
self.name = name # 普通属性,要在__init__方法中定义
self.age = age
# 下面是方法的定义
def sleep(self): # 普通方法
print(self.name, "is sleeping")
def eat(self, food): # 普通方法,另带参数
print(self.name, "is eating", food)
@classmethod
def sentence(cls, adv): # 类方法,使用装饰器变成类方法
print("I am", adv, "an", cls.actually)
@staticmethod
def other(person, do): # 静态方法
print(person, "is", do+"ing")
@staticmethod
def print_animal():
print("这是之后定义子类的父类,主要讲解最基本的属性、方法以及属性的修改")
print("类属性actually:属于整个类,每个实例都有的属性,内容相同,创建实例时不需要指定,类和实例都可以调用")
print("普通属性name age:属于各个实例,用于存储实例数据")
print("普通方法sleep eat:由对象调用,至少一个参数self")
print("类方法sentence:由类、实例调用,至少一个参数cls,可以引用类属性")
print("静态方法other:类中的普通函数,可由类、实例调用")
print("修改类属性:用类调用修改,所有实例都更改;用实例调用修改不影响类和其他实例")
print("修改普通属性:直接赋值即可")
创建实例
# 创建实例调用Animal类
adams = Animal(name="Adams",age=2) # 创建实例
adams.actually # 调用类属性
# 'animal'
Animal.actually # 类调用类属性
# 'animal'
adams.name # 调用普通属性
# 'Adams'
adams.sleep() # 调用普通方法
# Adams is sleeping
adams.eat("meat") # 有参数的普通方法
# Adams is eating meat
adams.sentence("really") # 实例调用类方法
# I am really an animal
Animal.sentence("actually") # 类调用类方法
# I am actually an animal
adams.other("Tim", "play") # 实例调用静态方法
# Tim is playing
Animal.other("Mary", "watch") # 类调用静态方法
# Mary is watching
Animal.actually = "Animal" # 修改类属性
adams.actually
# 'Animal'
adams.actually = "animal"
Animal.actually
# 'Animal'
adams.age = 3 # 普通属性这样就改过来了
Animal.print_animal()
以上是Animal怎么修改python3中的类的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注编程笔记行业资讯频道!