我想弄清楚如何將兩個對象合併在一起。我的目標是合併兩個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