簡體   English   中英

Python shell和IDLE之間的結果不同

[英]Different results between Python shell and IDLE

以下代碼打印從1到1000的5的倍數之和

s = 0
for i in range(1, 1001):
    if i % 5 == 0: s += i
print(s)

如果我在IDLE中運行此代碼,結果是100500,但是在shell中出現錯誤SyntaxError:無效語法 ,在print 為什么IDLE和shell會產生不同的結果? 我的Python版本是3.7。

在Python shell(規范名稱:REPL)中,您需要使用空行終止縮進塊,因此您應該在REPL中運行它:

s = 0
for i in range(1, 1001):
    if i % 5 == 0: s += i

print(s)

請注意print前的空行,這在REPL中是必需的,但在從文件(或IDLE)運行代碼時則不需要。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM