>>> ','.join('{},{}'.format(i, i + 1) for i in range(1, 100, 4))
'1,2,5,6,9,10,13,14,17,18,21,22,25,26,29,30,33,34,37,38,41,42,45,46,49,50,53,54,57,58,61,62,65,66,69,70,73,74,77,78,81,82,85,86,89,90,93,94,97,98'
这是一个快速而肮脏的解决方案。
现在,对于适合于不同类型进展问题的解决方案:
def deltas():
while True:
yield 1
yield 3
def numbers(start, deltas, max):
i = start
while i <= max:
yield i
i += next(deltas)
print(','.join(str(i) for i in numbers(1, deltas(), 100)))
这是一个快速而肮脏的解决方案。
现在,对于适合于不同类型进展问题的解决方案:
下面是使用itertools实现的类似想法:
包括对您期望的确切序列的一些猜测:
作为一行:
(顺便说一下,这是与Python 3兼容的)
从1,2,5,6,9,10。。。可以用余数1或2除以4。
相关问题 更多 >
编程相关推荐