假设discardsInvalidObjectsOnInsert
想要输出num = 10
尝试:[5, 6, 7, 8, 9, 10, 11, 12, 13, 14]
还有其他方法可以达到这个目的吗?
答案 0 :(得分:13)
使用range
的启动和停止参数,例如
>>> range(num - 5, num + 5)
[5, 6, 7, 8, 9, 10, 11, 12, 13, 14]
答案 1 :(得分:3)
你可以这样做
map(lambda x:x+5, range(10))
答案 2 :(得分:1)
好吧,我得说这个标题有点误导。
从给定数字创建-5和+ 5的列表 如果你想要
[num-5,...,num, ...,num +5]
,那就不是主体中的例子了。
无论如何,有几种方法,让我们坚持使用范围:
num = 10
delta = 5
print range(num-delta, num+delta)
>[5, 6, 7, 8, 9, 10, 11, 12, 13, 14]
#Or, if you want [num-5, ..., num, ..., num+5]
print range(num-delta, num+delta + 1)
>[5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
答案 3 :(得分:1)
尝试这种方式:
range(num+5)[-10:]
或者这个:
>>> def range5(num):
... i = num-5
... nums=[]
... while i < num+5:
... nums.append(i)
... i+=1
... return nums
...
>>> range5(10)
[5, 6, 7, 8, 9, 10, 11, 12, 13, 14]
>>> range5(20)
[15, 16, 17, 18, 19, 20, 21, 22, 23, 24]