我關心的是關於類似:當範圍很大時,「for/range」會消耗大量內存嗎?
for i in range(1000000000):
...
從一個天真的觀點,我認爲10億個整數數組分配和循環開始前初始化,釋放循環結束之後。
所以我想知道我是否應該將其替換爲:
i = 0
while i < 1000000000:
...
i += 1
但根據this answer,一個for
循環執行比同等while
循環更快。
所以我必須爲這種折衷做出解決,或者我的假設是錯誤的,並且在迭代大型range
時沒有顯着的內存影響?
@ mkrieger1:我的問題是「範圍消耗內存」,而不是「範圍和xrange之間有什麼區別」。所以**按照定義**,這兩個問題不能重複。這兩個答案可能是,所以你可以將它們標記爲重複。 – goodvibration
@khelwood:我的問題是「範圍消耗內存」,而不是「範圍和xrange之間有什麼區別」。所以**按照定義**,這兩個問題不能重複。這兩個答案可能是,所以你可以將它們標記爲重複。 – goodvibration
@ Jean-FrançoisFabre:我的問題是「範圍消耗內存」,而不是「範圍和xrange之間的區別」。所以**按照定義**,這兩個問題不能重複。這兩個答案可能是,所以你可以將它們標記爲重複。 – goodvibration