@CreativeStory

Как правильно объединить списки?

Есть 3 списка такого плана:

"[191717, 191718]","EH3105928,ISCAR 3105081","3,1"

Как можно их объеденить чтобы соответствие шли по индексу и результат был следующим:
"191717, EH3105928, 3", 
"191718, ISCAR 3105081, 1"
  • Вопрос задан
  • 132 просмотра
Пригласить эксперта
Ответы на вопрос 3
longclaps
@longclaps
Есть 3 списка такого плана:
"[191717, 191718]","EH3105928,ISCAR 3105081","3,1"

Я тут вижу 3 строки. Об отличиях строк и списков вы можете спросить у добрых людей здесь.

def f(*data):
    return tuple(', '.join(map(str.strip, t)) for t in zip(
        *[s.lstrip('[').rstrip(']').split(',') for s in data]))

print(f("[191717, 191718]", "EH3105928,ISCAR 3105081", "3,1"))
Ответ написан
Комментировать
@Cat-in-code
//list1-2-3-ваши списки
//result-результирующий список
for i, data in enumerate(list1):
  result.append(data)
  result.append(list2[i])
  result.append(list3[i])

Или так:
//list1-2-3-ваши списки
//result-результирующий список
for i, data in enumerate(list1):
  element=data+", "+list2[i]+", "+list3[i]
  result.append(element)

В зависимости от того, что требуется на выходе
Ответ написан
pavkozlov
@pavkozlov
Системный администратор
arr1 = [191717, 191718]
arr2 = ['EH3105928', 'ISCAR 3105081']
arr3 = [3, 1]

res1 = []
res2 = []

for i in range(len(arr1) - 1):
    res1.append(arr1[i])
    res2.append(arr1[i + 1])

    res1.append(arr2[i])
    res2.append(arr2[i + 1])

    res1.append(arr3[i])
    res2.append(arr3[i + 1])
print(res1)
print(res2)


Сделал бы вот так, если элементов одинаковое количество в списках
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы