Python范围包含变量

时间:2013-07-18 10:01:02

标签: python exception python-2.7 range

我编写了如下代码:

start = 96
range = 5
for d in range(start, start+range):
    print d

但我得到例外如下:

Traceback (most recent call last):
    File "<stdin>", line 1, in <module>
TypeError: 'int' object is not callable

Python不支持范围函数中的多个变量吗?

3 个答案:

答案 0 :(得分:4)

你覆盖了range

>>> range(5)
[0, 1, 2, 3, 4]
>>> range = 2
>>> range(2)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'int' object is not callable

阴影(覆盖)内置函数不是一个好习惯。

答案 1 :(得分:2)

答案就在这一行

range = 5

您可以分配内置函数,因此它与执行

相同
a = 5
a()

不允许这样做。尝试

range_ = 5
range(start, start+range_)

答案 2 :(得分:1)

range可以像任何标识符一样表示数字或函数(或其他内容),但不能同时表示两者。使用其他变量名称