• 缩进,unexpected indent


    用4个空格,或者设置Tab代替4个空格。
     
    对Spyder设置PEP8规则检测警告,可以有效改善编码习惯:
    Preferences > Editor > Code Introspection/Analysis,然后勾选Style analysis(PEP8)。
     

    https://blog.csdn.net/zxy131072/article/details/86147031

    在不同的编辑器里tab的长度可能不一致,所以在一个编辑器里用tab设置缩进后,在其它编辑器里看可能缩进就乱了。空格不会出现这个问题,因为空格就占一个字符的位置。Tab在ASCII码中,编码是9,而空格是32。其实,很多IDE对Tab键做了各种各样的优化,其中有一条就是,将Tab键展开为为空格,也就是说,当你按下Tab的时候,IDE实际上帮你把一个「9」转换成了四个(或者八个)「32」。但是要注意,不是所有的IDE都帮你做了这样的工作!既然Tab在不同的环境下展现不一样,而空格却永远都是一样的。对于一些细致排版缩进来说(比如说想把每一行的注释都对齐),用空格也更加精确。这样看起来,确实是用空格来写代码要好于用Tab。

    简单来说, 因为 python 用缩进来取代了 {} , 而空格或是 tab 都是合乎语法的缩进, 但因为空格和 tab 都是看不到的, 所以, 为了避免有人时而用 tab, 时而用空格来做缩进而做成了 bug, 所以, 在软规范里, 大家都约定用空格做缩进.如果你还想问为甚麼要约定用空格而不用 tab 呢 ? 那是因为不同的编辑器会对 tab 进行不一致的距离演译, 而用空格的话, 就不会有这个问题。

    --python3不允许混合使用space和tab;

    --python2倾向于将混合使用的space和tab转换为唯一的space;

     

    unexpected indent问题,可以考虑以下几个解决办法:

    1.检查是否不应该使用空格的地方使用了空格或Tab,检查是否有缩进,缩进量是否对,缩进和空格是否有混用。

    2.注释有时候也会影响,所以注释的缩进也应引起注意。

    3.尤其对于缩进和空格是否有混用,可以用文本编辑器Notepad++把当前python脚本的所有空格或Tab字符都显示出来查看。

  • 相关阅读:
    高等代数中的名词解析No1
    概率论中的名词解释(个人理解,非官方) No1
    概率论中的公式解释(个人理解,非官方) No1
    CentOS7 网络设置
    神经网络与人工智能No0导言(笔记版)
    centos7 防火墙设置
    神经网络与人工智能No1Rosenblatt感知器(笔记版)
    输入法打不出来的数学符号大全
    php对xml文件的解析
    PHPExcel生成Excel模版
  • 原文地址:https://www.cnblogs.com/myshuzhimei/p/11747731.html
Copyright © 2020-2023  润新知