python类里边给方法添加属性进列表

Python014

python类里边给方法添加属性进列表,第1张

往列表里添加多个值可以用 extend():

class User():

    

    def __init__(self, first_name, last_name):

        self.first = first_name

        self.last = last_name

    

    def titl(self):

        list = []

        # list.append(self.first_name)

        # list.append(self.last_name)

        list.extend([self.first, self.last])

        print(list)

        

me = User('ssx', 'xing')

print(me.first + ', ' + me.last)

me.titl()

比较简单的方式是把str和int理解为“原始数据类型”,其结构是不可以修改的。理由是,str和int是python中提供的标准数据类型,大家已经对这种数据类型的性质和用法有了普遍的共识和预定。如果硬要自己进行修改或者加上一些自定义的属性,就很容易破坏这种“共识”,进而导致程序可读性下降,甚至引入潜在的bug。

如果需要动态添加属性,就自己去定义一个专门的class,并在注释中写清楚该class可能会具有的属性,这样就显得很清楚。

#请修改一下子类IceCreamStand中的代码,代码如下:

class IceCreamStand(Restaurant):

def __init__(self,name,cuisine,num_serverd,flavours = "sweet"):#重点修改行

super(IceCreamStand, self).__init__(name,cuisine,num_serverd)

self.flavours = flavours

def show_flavours(self):

print("Ice is "+self.flavours+" .")

b = IceCreamStand("冰工厂","Haagen-Dazs(哈根达斯)",25,"chocolate")

b.describe()

b.show_flavours()