Python的高级特征你知多少?来对比看看
假如列表很小,好比 1000 行,计较所需的内存还行。但假如列表巨长,好比十亿浮点数,这样做就会呈现题目了。行使这种 for 轮回,内存中将呈现大量列表,但不是每小我私人都有无穷的 RAM 来存储这么多对象的。Python 中的 range() 函数也是这么干的,它在内存中构建列表。 代码中第二部门展示了行使 Python generator 函数对数字列表求和。generator 函数建设元素,并只在须要时将其存储在内存中,即一次一个。这意味着,假如你要建设十亿浮点数,你只能一次一个地把它们存储在内存中!Python 2.x 中的 xrange() 函数就是行使 generator 来构建列表。 上述例子声名:假如你想为一个很大的范畴天生列表,那么就必要行使 generator 函数。假如你的内存有限,好比行使移动装备或边沿计较,行使这一要领尤其重要。 也就是说,假如你想对列表举办多次迭代,而且它足够小,可以放进内存,那最好行使 for 轮回或 Python 2.x 中的 range 函数。由于 generator 函数和 xrange 函数将会在你每次会见它们时天生新的列表值,而 Python 2.x range 函数是静态的列表,并且整数已经置于内存中,以便快速会见。
原文链接:https://towardsdatascience.com/5-advanced-features-of-python-and-how-to-use-them-73bffa373c84 (编辑:河北网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |