类中的Concat方法

  • 本文关键字:方法 Concat python
  • 更新时间 :
  • 英文 :


我正在完成以下练习:我正在实现一个表示基本类型排序列表的类。

目前:

class SortedList():
def __init__(self, input_list):
self.input_list= input_list

def add(self,value):
self.input_list.append(value)
return self.input_list
def concat(self):
return 
def __repr__(self):
self.input_list.sort()
return str(self.input_list)

我打以下电话:

l1= SortedList(['z','l','a'])
print(l1)
l1.add('b')
print(l1)
l2= SortedList(['q','g'])
l3= l1.cocat(l2)
print(l3)

在l3定义之前,一切都按预期进行,因为不确定如何在类中定义这种类型的函数x.function(y(。

最后一个打印语句的所需输出为[a','b','g','l','q','z']

您可以在用另一个列表扩展列表的列表上使用+运算符,然后在调用concat()时返回SortedList的新实例。

class SortedList:
def __init__(self, input_list):
self.input_list = sorted(input_list)
def add(self, value):
self.input_list.append(value)
self.input_list.sort()
return self.input_list
def concat(self, other):
merged = self.input_list + other.input_list
return SortedList(merged)
def __repr__(self):
return str(self.input_list)

l1 = SortedList(["z", "l", "a"])
print(l1)
# ['a', 'l', 'z']
print(l1.add("b"))
# ['a', 'b', 'l', 'z']
l2 = SortedList(["q", "g"])
l3 = l1.concat(l2)
print(l3)
# ['a', 'b', 'g', 'l', 'q', 'z']

最新更新