Я пытаюсь сложить вместе два списка, чтобы первый элемент одного списка был добавлен к первому элементу другого списка, второй ко второму и т. Д., Чтобы сформировать новый список.
В настоящее время у меня есть:
def zipper(a,b):
list = [a[i] + b[i] for i in range(len(a))]
print 'The combined list of a and b is'
print list
a = input("\n\nInsert a list:")
b = input("\n\nInsert another list of equal length:")
zipper(a,b)
При вводе двух списков, где один представляет собой список целых чисел, а другой - список строк, я получаю сообщение об ошибке типа «Невозможно объединить объекты str» и «int».
Я попытался преобразовать оба списка в строки, используя:
list = [str(a[i]) + str(b[i]) for i in range(len(a))]
, однако после ввода:
a = ['a','b','c','d']
b = [1,2,3,4]
Я получил вывод:
['a1', 'b2', 'c3', 'd4']
вместо того, что я хотел:
['a+1','b+2','c+3','d+4']
Есть ли у кого-нибудь какие-либо предложения относительно того, кто ячто-то не так?
NB Мне нужно написать функцию, которая по сути будет выполнять те же функции, что и zip (a, b), но мне запрещено использовать zip () в любом месте функции.