就说我在 Python 中有一个整数,例如:100。
我想将这个整数转换成一个列表,直到这个整数,例如:[1,2,3,... 100]
最有效的方法是什么?
(如果您想知道我为什么要这样做,那是因为我想使用的 Django Paginate 库需要一个列表——如果有更优雅的方式来使用 Paginate 而无需这样做,请告诉我) .
最佳答案
Python range()
built-in做你想要的。例如:
range(1, 101)
请注意,range()
从 0
开始计数,这在计算机科学中很正常,因此我们需要传递 1
,并且它计数直到给定值,不包括 - 因此 101
在这里计数到 100
。所以一般来说,您希望 range(1, n+1)
从 1
计数到 n
。
另请注意,在 3.x 中,这会生成一个迭代器,而不是一个列表,因此如果您需要一个列表,那么您可以简单地将 list()
包裹在对 range 的调用中()
。就是说 - 大多数时候可以使用迭代器而不是列表(它有很大的优势,因为迭代器可以延迟计算),在这种情况下,不需要制作列表(在 2.x 中,功能就像 3.x 中的范围可以用 xrange()
实现。
关于python - 有没有办法将整数转换为向上计数的整数列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14178649/