嗨,伙计们,我想我会以错误的方式解决这个问题,最好的办法是什么?
到目前为止这是我的代码
for d in dl:
for i in a:
for j in dr:
print i + " " + j + " " + d
这打印了i j和d
的所有可能组合然而我想做的是d中的第一个元素打印出i中的第一个元素然后是j中的第一个元素,然后再次循环,同时仍然在d的第一个元素中打印出第二个元素i和j再次执行此操作,然后一旦完成打印出d的第2个元素并打印出i + j的第4个元素并执行此操作直到第6个元素
我该怎么做这样的循环
编辑确定对不起它甚至让我困惑的描述大声笑
例如
dl ={ test1, test2}
a = {a,b,c,d,e,f}
dr = {0,1,2,3,4,5}
我想要的是
test1 a 0
test1 b 1
test1 c 2
test2 d 3
test2 e 4
test2 f 5
答案 0 :(得分:1)
对于您尝试获取的输出,您可能希望使用索引,而不是执行for x in y
。这是我的建议:
for i in range(0,len(dl)):
for j in range(0,3):
a_elem = i*3 + j
print dl[i] + " " + a[a_elem] + " " + str(dr[a_elem])
str()
功能只是因为您的某个列表是int
列表。如何将它们打印出来取决于每个列表中的元素类型。如果它是一个混合,将str()
放在一切都是最安全的。
答案 1 :(得分:0)
这是你要找的吗?
for i in range(len(dl)):
print dl[i] + " " + a[i] + " " + dr[i]