【发布时间】:2011-12-18 10:26:47
【问题描述】:
我正在尝试将两个列表加在一起,因此一个列表的第一项添加到另一个列表的第一项,第二个到第二个等等以形成一个新列表。
目前我有:
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)
在输入两个列表时,其中一个是整数列表,另一个是字符串列表,我得到类型错误'Can not cocanenate 'str' and 'int' objects。
我尝试使用以下方法将两个列表都转换为字符串:
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']
有人对我做错了什么有任何建议吗?
注意我必须编写一个基本上与 zip(a,b) 执行相同的函数,但我不允许在函数中的任何地方使用 zip()。
【问题讨论】: