[英]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.