问题描述
我想找到一种方法,可以获取前n个负整数,因此如果我输入7,它将产生[-1,-2,-3,-4,-5,-6,-7]
import stdio
import sys
n = int(input(sys.argv[0]))
arr= list(range(-1,n))
print(arr)
解决方法
在Python中,range()
默认为加1。您可以通过为 step 提供负值来更改此值,这是range()
的第三个参数。您还需要提供正确的 stop 值,在您的情况下为-n-1
。
import stdio
import sys
n = int(input(sys.argv[0]))
arr = list(range(-1,-n-1,-1))
print(arr)
[-1,-2,-3,-4,-5,-6,-7]
,
另一种选择是使用“列表理解”
import stdio
import sys
n = int(input(sys.argv[0]+'\nPick a number,any number\n'))
arr= [-i for i in range(1,n+1)]
print(arr)