Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python循环范围与循环数组_Python - Fatal编程技术网

Python循环范围与循环数组

Python循环范围与循环数组,python,Python,vs 哪种选择更可取?在可读性或标准方面。如果你知道如何记住你的列表,意味着你可以使用列表 例:在你的情况下,这里有[-1,0,1],你可以很容易地记住 让我们 假设您想循环此列表->[-4,-3,-2,-1,0,1,2,3,4]您会尝试此列表还是下面的列表 for i in (-1, 0, 1): pass range()将帮助您生成动态列表 如果你想知道哪种方法最好, 你应该考虑你的用例 如果要使用列表一次请使用xrange xrange将返回生成器,它比range消耗的内存更少。。因

vs


哪种选择更可取?在可读性或标准方面。

如果你知道如何记住你的列表,意味着你可以使用列表

例:在你的情况下,这里有
[-1,0,1]
,你可以很容易地记住

让我们

假设您想循环此列表->
[-4,-3,-2,-1,0,1,2,3,4]
您会尝试此列表还是下面的列表

for i in (-1, 0, 1):
  pass
range()将帮助您生成动态列表

如果你想知道哪种方法最好, 你应该考虑你的用例

如果要使用列表一次请使用xrange xrange将返回生成器,它比range消耗的内存更少。。因为

range
返回一个Python列表对象,
xrange
返回一个xrange对象,因此您可以使用它一次

使用
range()
比使用列表慢,因为生成器必须生成每个值,而列表已经包含所有元素。因此,
range()
将比列表占用更少的内存

就可读性而言,
range()
通常比列表更容易阅读,
range()
告诉您它将循环使用哪些整数,而列表有很多值,因此如果有一个值被跳过,就很难注意到


标准说
range()
是更好的选择,如果需要循环一定的时间,几乎应该总是使用它。

哪种python版本?范围从2.x到3.x的工作方式有所不同。范围(-1,2)更具可读性;性能和内存使用差异是可以忽略的。为什么你认为会有速度差异?你想达到什么?如果序列应该包含300个数字呢?你能手动打吗?当然,
range()
您测试过吗?
xrange
不返回生成器。是已更改。。谢谢
for i in (-1, 0, 1):
  pass
>>> range(-4,5)
[-4, -3, -2, -1, 0, 1, 2, 3, 4]