【发布时间】:2013-03-13 11:35:26
【问题描述】:
我知道 python 2to3 将所有xrange 更改为range,我认为这没有任何问题。我的问题是它如何将range(...) 更改为list(range(...)):它是愚蠢的,只是盲目地搜索并替换它们,还是它足够聪明,可以判断何时不需要列表并将其保留为range 将是更好?
【问题讨论】:
标签: python list python-2to3
我知道 python 2to3 将所有xrange 更改为range,我认为这没有任何问题。我的问题是它如何将range(...) 更改为list(range(...)):它是愚蠢的,只是盲目地搜索并替换它们,还是它足够聪明,可以判断何时不需要列表并将其保留为range 将是更好?
【问题讨论】:
标签: python list python-2to3
我不知道它到底有多智能,但它肯定不会将list() 添加到每个 range()。
例如:
print(range(10))
改为:
print(list(range(10)))
但是,以下内容:
for el in range(10):
print(el)
保持不变。
这清楚地表明它比盲目的搜索和替换更复杂。
【讨论】: