在使用Perl和C之前,我是Python新手。
我遇到了一个简单的问题,Python专家可以很容易地解决这个问题。
我有列表,列表中的值可以是随机的。
list_a = [True, False]
list_b = [False, True]
list_c = [True]
我需要迭代多个列表。我研究过并得到以下工作。
output_list = []
for i,j,k in map(None, list_a, list_b, list_c):
output_list.append([i,j,k])
但我面临的挑战是在输出之后产生如下输出:[(True,False,True), (False,True, None)]
output_list [0] = [True,False,True] output_list [1] = [False,True,None]
期望是应该返回给出关于列表的线索。
output_list [0] = [True_list_a,False_list_b,True_list_c] output_list [1] = [False_list_a,True_list_b,None_list_c]
我不知道输出我得到的output_list是list_a或list_b或list_c。
如何使用相应的list_a,list_b,list_c元素创建output_list,以便我可以发送给函数。
有没有办法找到它?提前谢谢。
答案 0 :(得分:1)
只是一个猜测。也许,你想要这样的东西(关于你的评论" ... output_list应该有关于哪个列表的元素的线索" ):
root@DESKTOP-JAMJG6V:/mnt/c/Windows/System32# cd "Y:/All Projects/Lab Equipment/DataQ/python/"
bash: cd: Y:/All Projects/Lab Equipment/DataQ/python/: No such file or directory
输出:
import itertools
list_a = [True, False]
list_b = [False, True]
list_c = [True]
output_list = [{'list_a':t[0], 'list_b':t[1], 'list_c':t[2]}
for t in itertools.zip_longest(list_a, list_b, list_c)]
print(output_list)
答案 1 :(得分:0)
我猜你想要这样的东西:
import itertools
output_list = list(itertools.chain(list_a, list_b, list_c))