gpt4 book ai didi

python - 你能不使用列表向后迭代一个数字吗?

转载 作者:太空宇宙 更新时间:2023-11-03 12:19:38 24 4
gpt4 key购买 nike

如果不使用 Python 3 中的列表,您将如何向后迭代数字?

使用列表,我可能会做类似的事情:

li = list(range(100))
for i in li[::-1]:
print(i)

这是一个很好的解决方案,但不适用于大量数据。现在,我正在尝试用大数字向后迭代一个数字,但是发生了溢出错误,所以我想我需要以某种方式找到一种不使用列表向后迭代数字的方法。

有什么办法吗?

最佳答案

提供 __reversed__() 特殊方法的迭代器也支持反向迭代。在 Python 3.x 中,range() 迭代器有这个方法,所以你也可以使用

for i in reversed(range(100)):
print(i)

在 Python 2.x 中,xarnge() 允许反向迭代:

for i in reversed(xrange(100)):
print i

两个版本都没有将整个列表存储在内存中。

关于python - 你能不使用列表向后迭代一个数字吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5136344/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com