系统相关
首页 > 系统相关> > Python shell和IDLE之间的结果不同

Python shell和IDLE之间的结果不同

作者:互联网

以下代码打印从1到1000的5的倍数之和

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

如果我在IDLE中运行此代码,结果是100500,但是在shell中出现错误SyntaxError:无效语法,在打印时出现.为什么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)

请注意打印前的空行,这在REPL中是必需的,但在从文件(或IDLE)运行代码时则不需要.

标签:python-idle,python,python-3-x,interpreter
来源: https://codeday.me/bug/20190827/1745687.html