partition2D = [['A', '1', '2', '4'], ['B', '3', '5'], ['C', '6']]
for partition in partition2D:
    label = partition[0]
row_indices = [int(i) for i in partition[1:]]
rows = dataset2D[row_indices]
for column in zip(*rows):
    print(column, end=' ')
print()
Перебрать два вложенных 2D-списка, где list2 имеет номера строк list1.