往列表里添加多个值可以用 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()