大佬教程收集整理的这篇文章主要介绍了如何向后遍历这个压缩表?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有类似这张桌子的东西:
table =
[[set(),{A},set(),{B}],[{C},{D}]]
我想遍历列,以便按顺序查看 B、D、set()、set()、A、set()、set()、C
我使用 zip(*tablE) 翻转了我的桌子,现在这个:
table = zip(*tablE)
for word_index,row in enumerate(tablE):
for index in range(len(row)):
print(row[index])
允许我像 set()、C、A、set()、set()、set()、B、D 一样迭代 这是非常接近的。但我也想反转。
zip(*tablE) 不允许我调用 reversed(zip(*tablE))
我怎样才能遍历我想要的?如果可以避免的话,我真的不想导入 Pandas 或 numpy。
您可以在将 reversed
传递给 zip 之前将它们映射到行:
table = [[set(),{"A"},set(),{"B"}],[{"c"},{"D"}]]
成对:
for s1,s2 in zip(*map(reversed,tablE)):
print(s1,s2)
{'B'} {'D'}
set() set()
{'A'} set()
set() {'c'}
扁平化:
flat = (s for ss in zip(*map(reversed,tablE)) for s in ss)
print(*flat)
{'B'} {'D'} set() set() {'A'} set() set() {'c'}
请注意,zip、map 和 reversed 都是迭代器,因此您确实是按照所需的顺序进行迭代(而不是为行创建反向列表或临时倒置矩阵)
,与其他人类似,只是使用不同的符号 [::-1]
来反转。
for i in zip(*[I[::-1] for i in table]):
print(i)
,
这个怎么样:
table = [[set(),{'A'},{'B'}],[{'C'},{'D'}]]
liste=[]
for obj1,obj2 in zip(*table[::-1]):
liste.append(obj1)
liste.append(obj2)
print(liste[::-1])
以上是大佬教程为你收集整理的如何向后遍历这个压缩表?全部内容,希望文章能够帮你解决如何向后遍历这个压缩表?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。