Как я могу объединить два элемента из разных списков, а также, если у меня есть список, как это:Как объединить два элемента из разных списков с помощью python?
data_list = [['Toys', 'Communications', 'Leather'], ['Teddy', 'Mobile', 'Hand'], ['bear', 'phone', 'bag']]
Я использовал зип функцию, чтобы преобразовать их в кортежах, как это:
data_tupled_list = zip(*data_list)
, что приводит как это:
[('Toys', 'Teddy', 'bear'),
('Communications', 'Mobile', 'phone'),
('Leather', 'Hand', 'bag')]
Я хочу, чтобы список, как это:
[('Toys', 'Teddybear'),
('Communications', 'Mobilephone'),
('Leather', 'Handbag')]
Я бы пойти дальше и использовать «» .join ((Ь, с)), чтобы избежать неприятных производительностей конкатенации в списке – GoingTharn
@GoingTharn - Там нет никаких оснований для использования '. '.join ((b, c))' over 'b + c'. Join необходимо создать кортеж, а затем объединить его в основном так же, как и 'b + c'. Если у вас более двух элементов, вы можете получить небольшой выигрыш. Конечно, для произвольной длины вы хотите «присоединиться». Но для случая, когда у вас есть только 2 элемента, я подозреваю, что '+' настолько же эффективен, как вы можете получить. – mgilson
- это правда, даже если вы находитесь в неявном цикле с пониманием списка? Я всегда предполагал (возможно, ошибочно!), Что конкатенация внутри цикла/списка comp не работает – GoingTharn