Source = [('A','B','IP1','N1'),('K','G','IP2','N2'),('K','L','IP3','N3') ('W','T','IP4','N4') ]
Target = [('B','A','IP5','N5'), ('T','W','IP6','N6')]
Здесь вы можете видеть, что первые два символа в каждом кортеже из списка Target
были обратными к Source
кортежам, поэтому мне нужно сделать список Target
как
Re_Target = [('B','A','IP5','N5'),('G','K'),('L','K') ('T','W','IP6','N6')]
Здесь 1-йи последние кортежи из списка списков Re_Target
такие же, как 1-й и последний кортежи источника, так как это выглядит как обратная комбинация, и если нет обратной комбинации, добавьте реверс без 'IP'
и 'N'
в кортеже, как для('K','G','IP2','N2'),('K','L','IP3','N3') -> ('G','K'),('L','K')
Примечание: не следует использовать вложенные для цикла или itertools, так как это очень медленно для моих данных, которые будут иметь 7000 кортежей, и вместо 'A', 'B', 'K', 'G', .. это может быть что угодно.