Ваш код кажется немного сложным. Я бы предложил сделать это с помощью словаря:
Data = [["1stItem", "version1.1"],
["1stItem", "version1.2"],
["1stItem", "version1.3"],
["2ndItem", "version1.1"],
["2ndItem", "version1.2"],
["3rdItem", "version1.1"],
["3rdItem", "version1.2"],
["3rdItem", "version1.3"],
["3rdItem", "version1.4"]]
FinalData = {}; # Create dictionary
for Item in Data:
if not(Item[0] in FinalData.keys()): # If Key does not exist, add it
FinalData[Item[0]] = [] # Add the key, array as defult value
FinalData[Item[0]].append(Item[1]) # Add 'Version' to array
for Key in FinalData.keys():
print("%s %s" % (Key, ", ".join(FinalData[Key]))) # Print the result
Это даст следующий результат:
2ndItem version1.1, version1.2
1stItem version1.1, version1.2, version1.3
3rdItem version1.1, version1.2, version1.3, version1.4
Надеюсь, это поможет.