Python:从列表中获取很多列表[重复]

Python:从列表中获取很多列表[重复],第1张

Python:从列表中获取很多列表[重复]

该迭代工具文档。阅读,学习,喜欢它。

具体来说,从食谱部分:

import itertoolsdef grouper(n, iterable, fillvalue=None):  "grouper(3, 'ABCDEFG', 'x') --> ABC DEF Gxx"  args = [iter(iterable)] * n  return itertools.izip_longest(fillvalue=fillvalue, *args)

这使:

>>> tuple(grouper(3, (1,2,3,4,5)))((1, 2, 3), (4, 5, None))

那不是你想要的…你不想

None
在那里…所以。快速修复:

>>> tuple(tuple(n for n in t if n) for t in grouper(3, (1,2,3,4,5)))((1, 2, 3), (4, 5))

如果您不想每次都输入列表理解,我们可以将其逻辑移至该函数中:

def my_grouper(n, iterable):  "my_grouper(3, 'ABCDEFG') --> ABC DEF G"  args = [iter(iterable)] * n  return tuple(tuple(n for n in t if n)       for t in itertools.izip_longest(*args))

这使:

>>> tuple(my_grouper(3, (1,2,3,4,5)))((1, 2, 3), (4, 5))

做完了



欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5674687.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-12-16
下一篇2022-12-16

发表评论

登录后才能评论

评论列表(0条)

    保存