[英]My iteration will only return the last item in my list, not return each item one at a time to pass to another function for use in a master list
初学者问题:我试图遍历列表并返回每个项目以发送到另一个列表。 我只能让它返回每个列表中的最后一项 - 4 & 'home'。 我究竟做错了什么?
def held():
alist = [1, 2, 3, 4]
blist = ['bob', 'is','not', 'home']
for event in range(0,3):
for item in alist:
ide = item
acc_id = int(ide)
for item in blist:
sev = item
sever = str(sev)
return acc_id, sever
held()
return
语句只能在一个方法中执行一次。 它只会返回最后一个元素,因为程序将首先循环遍历列表,然后返回值(然后将等于列表的最后一个值,而这是执行的 las 迭代)。
如果您想返回类似[1, "bob", 2, "is"...]
,您可以执行以下操作:
array1 = [1, 3, 5]
array2= [2, 4, 6]
array3 = []
for index in range(0, len(array1)):
array3.append(array1[index])
array3.append(array2[index])
print(array3)
# Expexted output : [1, 2, 3, 4, 5, 6]
正如Timus的评论中所说,如果你想要[(1, "bob"), (2, "is")...]
作为输出,你可以这样做:
array1 = [1, 3, 5]
array2= [2, 4, 6]
array3 = list(zip(array1 , array2))
print(array3)
# Expected output : [(1, 2), (3, 4), (5, 6)]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.