使用 itertools 来降低四个“for”的复杂性斯蒂姆?
我有 4 个列表:
list1, list2, list3, list4 = range(0,4), range(4,9), range(8,15), range(2,16)
# just using range() generate sample data
我可以通过以下代码按序列 list1_item、list2_item、list3_item、list4_item
列出所有项目组合:
for item1 in list1:
for item2 in list2:
for item3 in list3:
for item4 in list4:
print [item1, item2, item3, item4]
我是否可以通过 itertools
模块?
谢谢
I have list 4 lists:
list1, list2, list3, list4 = range(0,4), range(4,9), range(8,15), range(2,16)
# just using range() generate sample data
I can list all the items combination by sequence list1_item, list2_item, list3_item, list4_item
via below code:
for item1 in list1:
for item2 in list2:
for item3 in list3:
for item4 in list4:
print [item1, item2, item3, item4]
May I know if I can do this job via itertools
module?
Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
是的,您可以:(
n
将是一个元组而不是列表)。Yes, you can:
(
n
will be a tuple instead of a list).我认为你想要的是 itertools.product
而 ret 就是结果。
I think what you want is itertools.product
And ret is the result.