鱼C论坛

 找回密码
 立即注册
查看: 1420|回复: 14

[已解决]这个代码报错咋回事啊,明明和甲鱼的代码一毛一样。

[复制链接]
发表于 2022-3-1 18:28:29 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
matrix = [[1, 2, 3],
              [4, 5, 6],
              [7, 8, 9]]
>>> diag = [matrix[i][len(M)-1-i] for i in range(len(matrix))]
Traceback (most recent call last):
  File "<pyshell#12>", line 1, in <module>
    diag = [matrix[i][len(M)-1-i] for i in range(len(matrix))]
  File "<pyshell#12>", line 1, in <listcomp>
    diag = [matrix[i][len(M)-1-i] for i in range(len(matrix))]
NameError: name 'M' is not defined
最佳答案
2022-3-1 21:10:12
一只小肥仔丶 发表于 2022-3-1 21:03
我就是纯手打的列表,我也纳闷好几次都这样了........5555

可是你那个报错确实是在交互模式下把多行粘贴进去才会引发的呀,要不你不要把那个列表写成多行了,这个可以直接复制粘贴过去:
matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
diag = [matrix[i][len(matrix)-1-i] for i in range(len(matrix))]
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2022-3-1 18:29:01 | 显示全部楼层
救救孩子吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-3-1 18:30:10 | 显示全部楼层
diag = [matrix[i][len(M)-1-i] for i in range(len(matrix))]
这里的 M 没定义
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-3-1 18:31:22 | 显示全部楼层
matrix = [[1, 2, 3],
              [4, 5, 6],
              [7, 8, 9]]
diag = [matrix[i][len(matrix)-1-i] for i in range(len(matrix))]
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-3-1 19:52:53 | 显示全部楼层
ckblt 发表于 2022-3-1 18:30
这里的 M 没定义

求大佬帮改进
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-3-1 19:54:02 | 显示全部楼层

这个我试过,也会报错
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-3-1 20:44:35 | 显示全部楼层
一只小肥仔丶 发表于 2022-3-1 19:54
这个我试过,也会报错

这个是不会报错的,你可以先复制去试试,

出错的话再把报错信息粘贴上来
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-3-1 20:53:45 | 显示全部楼层
isdkz 发表于 2022-3-1 20:44
这个是不会报错的,你可以先复制去试试,

出错的话再把报错信息粘贴上来

matrix = [[1, 2, 3],
              [4, 5, 6],
              [7, 8, 9]]
diag = [matrix[i][len(matrix)-1-i] for i in range(len(matrix))]
SyntaxError: multiple statements found while compiling a single statement
然后我对齐之后,Python 也没有输出值进行反馈,就是还空着,再按几次回车也一样
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2022-3-1 20:57:24 | 显示全部楼层
一只小肥仔丶 发表于 2022-3-1 20:53
matrix = [[1, 2, 3],
              [4, 5, 6],
              [7, 8, 9]]

在 idle 下你不要多行一起粘贴,你要一行一行打
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-3-1 21:03:20 | 显示全部楼层
isdkz 发表于 2022-3-1 20:57
在 idle 下你不要多行一起粘贴,你要一行一行打

我就是纯手打的列表,我也纳闷好几次都这样了........5555
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2022-3-1 21:10:12 | 显示全部楼层    本楼为最佳答案   
一只小肥仔丶 发表于 2022-3-1 21:03
我就是纯手打的列表,我也纳闷好几次都这样了........5555

可是你那个报错确实是在交互模式下把多行粘贴进去才会引发的呀,要不你不要把那个列表写成多行了,这个可以直接复制粘贴过去:
matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
diag = [matrix[i][len(matrix)-1-i] for i in range(len(matrix))]
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-3-1 21:17:08 | 显示全部楼层
isdkz 发表于 2022-3-1 21:10
可是你那个报错确实是在交互模式下把多行粘贴进去才会引发的呀,要不你不要把那个列表写成多行了,这个可 ...

>>> matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
>>> diag = [matrix[i][len(matrix)-1-i] for i in range(len(matrix))]
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
>>> diag = [matrix[i][len(matrix)-1-i] for i in range(len(matrix))]
>>>
>>>
>>>
>>>
>>>
>>>
>>> matrix = [[1, 2, 3], [4, 5, 6],  [7, 8, 9]]
>>> diag = [matrix[i][len(matrix)-1-i] for i in range(len(matrix))]
>>>
还是Python 没有反馈,我纯手打了两遍,离大谱。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-3-1 21:20:20 | 显示全部楼层
一只小肥仔丶 发表于 2022-3-1 21:17
>>> matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
>>> diag = [matrix[len(matrix)-1-i] for i in range ...

这两句就是没有反馈的呀,你可以只输个 matrix 或 diag 来查看
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2022-3-1 21:20:43 | 显示全部楼层
isdkz 发表于 2022-3-1 21:10
可是你那个报错确实是在交互模式下把多行粘贴进去才会引发的呀,要不你不要把那个列表写成多行了,这个可 ...

y = [c * 2 for c in "FishC"]
>>> y
['FF', 'ii', 'ss', 'hh', 'CC']
>>> code = [ord(c) for c in "FishC"]
>>> code
[70, 105, 115, 104, 67]
Python 检查了一下也没问题,尬死了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-3-1 21:23:21 | 显示全部楼层
isdkz 发表于 2022-3-1 21:20
这两句就是没有反馈的呀,你可以只输个 matrix 或 diag 来查看

大师我悟了,感谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-12 06:48

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表