发布网友 发布时间:2022-04-25 07:30
共6个回答
热心网友 时间:2022-04-18 07:31
Python语法要求在一份运行代码中的所有for,if/else的语句':'的下一行要统一缩进量(有’一个制表符(TAB键)‘,’两个空格‘,和’三个空格‘可以选择)
如果缩进量不统一(比如TAB键和四个空格混用),则程序便会报错IndentationError: unindent does not match any outer indentation level(缩进不匹配任何外在的缩进级别)
需要注意的是,即使Tab键的长度和四个空格一样长,两者一起用依然还是会报错。。。
这种情况下很难查出错,就需要使用文本编辑器里面的显示空格与制表符的功能来查看了。
如图,点击notepad++环境下的视图->显示符号->显示空格与制表符路径,便可以查看了
Tab键在这里显示为一个箭头,而空格显示为一个点。这样便知道哪里用了Tab键,哪里用了四个空格了,之后统一一下就不会报错了。
扩展资料
可选的 n 参数是在显示或打印列表中的下一个表达式之前移动的列数。若省略此参数,则 Tab 将插入点移动到下一个打印区的起点。这就使 Tab 可用来替换国别中的逗号,此处,逗号是作为十进制分隔符使用的。
import sysimport readlineimport rlcompleterimport atexitimport os#tab
completionreadline.parse_and_bind('tab:complete')#history filehistfile =
os.path.join(os.environ['HOME'],'.pythonhistory')try:
readline.read_history_file(histfile)except IOError:
passatexit.register(readline.write_history_file,histfile)del os,histfile,readline,rlcompleter
参考资料:百度百科 Tab (Tab函数)
热心网友 时间:2022-04-18 08:49
缩进问题,或者是空格和Tab混用。热心网友 时间:2022-04-18 10:24
Read-Eval-Print-Loop问题……就是说,实时解释器中,每输入完一个程序段,就必须空一行,让前面的...变成>>>,以输入下一段程序。
注意sayhello()上面的空行。
如果你把代码写在一个文件里,然后运行,就不一定要写这个空行啦(虽然为了美观,强烈推荐保留空行)
热心网友 时间:2022-04-18 12:15
缩进不对啊,python是缩进敏感的语言这样也不行。。。我才开始学两天,什么都不太懂。。。命令行是什么啊??
热心网友 时间:2022-04-18 14:23
有可能是缩进问题热心网友 时间:2022-04-18 16:48
我也碰到了同样的报错,检查代码后,确认是 缩进问题。