我有一个关于的python函数如何工作的问题。我有一个我正在编写的程序,涉及生成多个数字的素数分解。
for a in range(2,25):
print primefactorize(a)
当我在上面的范围内测试时,在终端弹出的最后一个列表是24的主要因子分解输出,而不是25.功能是否
for a in range(1,x):
只运行每个值到x-1?
由于
答案 0 :(得分:5)
我认为你的混淆是range
range(2,25)
[2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24]
来自文档:
这是一个用于创建包含算术的列表的通用函数 级数。它最常用于for循环。争论必须 是简单的整数。如果省略step参数,则默认为1。 如果省略start参数,则默认为0.完整表单 返回普通整数列表[start,start + step,start + 2 * 步, ...]。如果step为正,则最后一个元素是最大的开始 + i *步骤少于停止;如果step为负数,则最后一个元素是最小的start + i * step大于stop。步骤不能为零 (或者引发ValueError)。例如:
在数学中,这称为start
inclusive, stop
exclusive interval,如下所示:
[start, stop)