我想弄清楚如何将两个对象合并在一起。我的目标是合并两个Album
对象(下面的代码)。只有Album
对象的'title'参数相同时,我需要能够合并多个Album
对象的tracks
参数(它们是列表)。'合并'Python中的两个对象
基本上,如果我有一个Album
对象,其中tracks
参数的长度为1,并且其他相册对象,其中tracks
参数的长度也为1,新的或更新的单数Album
对象需要具有tracks
参数长度为2.
我已经发布我的代码以显示如何定义对象。
提前致谢!
编辑:因为tracks
参数列表中的每个元素都是歌曲的名称,所以我想保留相同的元素并将它们放入新的或更新的tracks
参数中。我不需要改变元素的数量,而需要将每个对象的确切元素放入这个“新”对象中。
class Album(object) :
def __init__(self, artist, title, tracks = None) :
tracks = []
self.artist = artist
self.title = title
self.tracks = tracks
def add_track(self, track) :
self.track = track
(self.tracks).append(track)
print "The track %s was added." % (track)
def __str__(self) :
if len(self.tracks) == 1 :
return "Artist: %s, Album: %s [" % (self.artist, self.title) + "1 Track]"
return "Artist: %s, Album: %s [" % (self.artist, self.title) + str(len(self.tracks)) + " Tracks]"
你的意思是'将每个对象的确切元素放入这个'新'对象中。 '? – Kasramvd 2014-10-04 21:08:55
@Kasra如果Album对象1的'tracks'列表是'['one']'而Album对象2的'tracks'列表是'['two']',那么最终的'tracks'列表将会是'['one' ,'two']'。我将这些信息加入,因为我不想只添加两个列表的长度,我想将这些元素添加到新列表中。 – 2014-10-04 21:12:51
我添加了一个答案! – Kasramvd 2014-10-04 21:21:19