int main(){
int t = 1;
while(t != 0)
t = t + 1;
return 0;
}
此代碼會是什麼相當於在Python?
在C中,儘管看起來像這樣,但它不是一個無限循環。在Python中它會類似嗎?
int main(){
int t = 1;
while(t != 0)
t = t + 1;
return 0;
}
此代碼會是什麼相當於在Python?
在C中,儘管看起來像這樣,但它不是一個無限循環。在Python中它會類似嗎?
Python的整數並不在不斷的字節數的限制,只能在你的內存限制。此循環將永遠持續下去,直到您的計算機內存不足。
使用sys.getsizeof(int())
和sys.getsizeof(int(2**128))
來測試此行爲。
反正就是終止相當於是
t = 1
while t < 2**32:
t += 1
(考慮32位整數)
您可以numpy
試試這個:
import numpy as np
t = (np.int16)(1)
while t != 0:
print t
t += (np.int16)(1)
print t
我要投票關閉這個問題作爲題外話,因爲這不是一個教程服務。 OP應該檢查官方Python文檔和其他輔導站點。 –
由於這個C程序表現出未定義的行爲,因此不清楚作者所要求的Python程序。 Jonath,你認爲這個程序到底是什麼? –
鑑於[這是關於在Python中整數的最大值的響應](https://stackoverflow.com/questions/7604966/maximum-and-minimum-values-forints),我要說的行爲將是不同的。 – AntonH