acia 发表于 2020-6-21 21:41:40

for 循环中的缩进问题


for animal in animals:
    print("A "+animal+" would make a great pet.")
    print("A " + animal+ " is so cute.\n")
print("any of these animals would make a great pet.")
SyntaxError: invalid syntax

for循环结束后,想接着输入一条消息,只执行一次,没有缩进,但程序一直报错“invalid syntax”,请问是什么原因?

Twilight6 发表于 2020-6-22 00:16:27

invalid syntax

这个是语法错误,但是你发的这段代码是没有语法错误的,是你完整代码中有语法错误

常见的语法错误有:

1 . 语句用中文字符,而不是英文

2 . 代码的某个地方少了个括号

3 . 代码的某个地方少了个冒号

wp231957 发表于 2020-6-22 06:52:49

发全部代码

acia 发表于 2020-6-22 10:53:56

Twilight6 发表于 2020-6-22 00:16
这个是语法错误,但是你发的这段代码是没有语法错误的,是你完整代码中有语法错误

常见的语法错误有 ...

没有啊,我全程都是用的英语输入法,系统报错的地方就在最后一个print上,应该还是缩进的问题。在录入print("A " + animal+ " is so cute.\n")后回车,print("any of these animals would make a great pet.")继续缩进,然后我就删除了缩进,再回车打印的时候就报错了。
谢谢你的回答

Twilight6 发表于 2020-6-22 10:58:20

acia 发表于 2020-6-22 10:53
没有啊,我全程都是用的英语输入法,系统报错的地方就在最后一个print上,应该还是缩进的问题。在录入pri ...

你把代码发完整 我直接帮你改改吧~

acia 发表于 2020-6-22 11:11:51

Twilight6 发表于 2020-6-22 10:58
你把代码发完整 我直接帮你改改吧~

>>> animals = ["dog","cat","pig","horse"]
>>> for animal in animals:
        print("A " + animal+" would make a great pet.")
        print("A " + animal+" is so cute.\n")
print("Any of these animals would make a great pet.")
是这么发么?没在这里发过,不知道对不对?{:9_241:}

Twilight6 发表于 2020-6-22 11:15:30

acia 发表于 2020-6-22 11:11
>>> animals = ["dog","cat","pig","horse"]
>>> for animal in animals:
        print("A " + animal+" woul ...



你是IDLE吧? 直接 Ctrl+N 新建脚本,复制下面代码到脚本里面 然后 F5 运行

animals = ["dog","cat","pig","horse"]
for animal in animals:
    print("A " + animal+" would make a great pet.")
    print("A " + animal+" is so cute.\n")
print("Any of these animals would make a great pet.")

acia 发表于 2020-6-22 11:16:47

acia 发表于 2020-6-22 11:11
>>> animals = ["dog","cat","pig","horse"]
>>> for animal in animals:
        print("A " + animal+" woul ...

还有个问题,我根据小甲鱼老师说的,ctrl+n新建一个编辑器,但ctrl+s保存后,在保存的文件夹里面是跑起来的程序,我写的代码怎么保存呢?(不好意思,我真是刚开始接触这些,问的有点傻)

acia 发表于 2020-6-22 11:19:14

Twilight6 发表于 2020-6-22 11:15
你是IDLE吧? 直接 Ctrl+N 新建脚本,复制下面代码到脚本里面 然后 F5 运行

哦哦,原来是这样呢。可为什么在IDLE里面不行呢

Twilight6 发表于 2020-6-22 11:21:14

acia 发表于 2020-6-22 11:19
哦哦,原来是这样呢。可为什么在IDLE里面不行呢

IDLE 不支持多条语句同时执行 , 你这里的 for 循环整个算一条语句了然后 最后一个print 不是在for结构体内的所以算第二条语句,导致报错

acia 发表于 2020-6-22 11:23:49

Twilight6 发表于 2020-6-22 11:21
IDLE 不支持多条语句同时执行 , 你这里的 for 循环整个算一条语句了然后 最后一个print 不是在for结构 ...

明白了,谢谢你吼{:7_123:}

Twilight6 发表于 2020-6-22 11:25:36

acia 发表于 2020-6-22 11:23
明白了,谢谢你吼


但是正常报错是这样的:SyntaxError: multiple statements found while compiling a single statement

而不是你的 :SyntaxError: invalid syntax

第二个你的是语法错误噢~~
页: [1]
查看完整版本: for 循环中的缩进问题