python类的基础内容

71 阅读1分钟
# 定义类
class Food:
    # 类变量 类内部直接使用,类外部Food.foodCount
    foodCount = 0
    # 初始化类--构造函数/初始化函数只能有一个
    # def __init__(self): #self代表类的实例对象所表示的地址值,必须有
    #     self.name = "admin"
    #     self.price =25
    def __init__(self,name,price):
        self.name = name
        self.price = price
    def prt(self):
        print(self.name+"is"+str(self.price))
    def add(self):
        self.foodCount+=1

# 类实例化--Python 中并没有这个关键字,类的实例化类似函数调用方式
# food1 = Food()
food2 = Food("卷心菜",19)

# print(food1.name,food1.price)
print(food2.name,food2.price)#卷心菜 19
food2.prt()#卷心菜is19
food2.add()
print(food2.foodCount)#1

food2.price = 18
print(food2.price)
print("----------------------------")
# 访问属性:
# getattr(obj, name[, default]) : 访问对象的属性。
# hasattr(obj,name) : 检查是否存在一个属性。
# setattr(obj,name,value) : 设置一个属性。如果属性不存在,会创建一个新属性。
# delattr(obj, name) : 删除属性。

print( getattr(food2,'name') ) #卷心菜
print(hasattr(food2,'age')) #false
setattr(food2,"count",10)
print(getattr(food2,'count'))
delattr(food2,'count')

print("----------------------------")

# 类的属性(包含一个字典,由类的数据属性组成)
print(food2.__dict__)
print(food2.__doc__)