迭代两个范围for循环
问题描述:
我有几个简单的循环,像这样:迭代两个范围for循环
for i in range (30, 52):
#do some stuff here
for i in range (1, 18):
#do some more stuff
我想什么是使用顺序的语法凝结成一个圈这样的:
for i in range((30, 52), (1, 18):
#do some stuff
我意识到语法不起作用,但这是我需要的基本概念。我见过使用zip同时迭代两个范围的人,但这不是我所需要的。
任何想法?
答
从https://docs.python.org/2/library/itertools.html#itertools.chain:
请返回来自第一迭代元素,直到它 耗尽的迭代器,然后前进到下一个迭代,直到所有的 iterables的已耗尽。用于将连续序列作为 单一序列进行处理。
实施例:使用他们
import itertools as it
for i in it.chain(range(30, 52), range(1, 18)):
print(i)
+0
工作完美。非常感谢。将在8分钟内接受! – gdogg371
链['itertools.chain.from_iterable'](https://docs.python.org/2/library/itertools.html#itertools.chain.from_iterable )。 –
@AshwiniChaudhary嗨,谢谢你的回复。你不能详细说明你的语法吗?谢谢。 – gdogg371
@AshwiniChaudhary我认为'产品'是OP在寻找什么? – Kasramvd