Python中的缩进(Indentation)决定了代码的作用域范围。这一点和传统的c/c 有很大的不同(传统的c/c 使用花括号花括号{}符决定作用域的范围;python使用缩进空格来表示作用域的范围,相同缩进行的代码是处于同一范围)。

每行代码中开头的空格数(whitespace)用于计算该行代码的缩进级别(Indentation level),注意一个Tab会被替换为1~8个Space(具体的空格数量,不同的编译器有不同的数量),缩进级别为0表示无缩进空格。

在一个源文件不建议同时使用空格和制表缩进符,当使用别人代码的时候几乎是不可能知道别人使用的是空格还是制表符,这时最好统一缩进,在IDEL编辑器中可以使用 Edit > Untabify Region 将任何制表符转化为空格。

Python中的每一条语句都有一个缩进级别,并且缩进级别会使用栈的数据结构进行存储。在开始读取文件之前,0(表示缩进级别为0,无缩进)会被首先压入栈中。然后从文件开头到末尾,依次读取每行逻辑代码,每行逻辑代码的缩进级别都会和栈顶值进行比较,如果相等,那么什么都不会发生;如果比栈顶值大的话,那么该行逻辑代码的缩进级别就会被压入栈中,同时会生成一个缩进标记(INDENT TOKEN);如果比栈顶值小的话,那么栈中所有比该行逻辑代码缩进级别大的值都会从栈中移除,并且还会生成一个扩展标记(DEDENT TOKEN)。

下面是一个正确的缩进案例:def perm(l):#0

# Compute the list of all permutations of l

if len(l) <= 1:# 1

return [l]# 2

r = []# 3

for i in range(len(l)):# 4

s = l[:i] l[i 1:]# 5

p = perm(s)# 6

for x in p:# 7

r.append(l[i:i 1] x)# 8

return r# 9

下面是一个错误的案例def perm(l): #1 error: first line indented

for i in range(len(l)): #2 error: not indented

s = l[:i] l[i 1:]

p = perm(l[:i] l[i 1:]) #3 error: unexpected indent

for x in p:

r.append(l[i:i 1] x)#4

return r #5 error: inconsistent dedent

以上就是python缩进规则叫什么的详细内容,更多请关注jquery中文网其它相关文章!

本文原创发布jQuery中文网,转载请注明出处,感谢您的尊重!

python的缩进规则是什么意思_python缩进规则叫什么相关推荐

  1. python的缩进规则具体是什么_python缩进规则叫什么

    Python中的缩进(Indentation)决定了代码的作用域范围.这一点和传统的c/c++有很大的不同(传统的c/c++使用花括号花括号{}符决定作用域的范围:python使用缩进空格来表示作用域 ...

  2. python的缩进规则是什么意思_python缩进规则有哪些?只有遵守该规则的程序才能运行...

    [摘要]Python 对代码的缩进要求非常严格,那么python缩进规则有哪些?只有遵守该规则的程序才能运行,小编建议大家可以试着理解这些内容,也许对您的python学习有帮助,毕竟实践出真知,所以你 ...

  3. python的缩进规则是什么意思_Python缩进规则精讲

    在写作文的时候,老师会告诉我们每段要空两格,这两个空格标志着一个新的段落开始了.在编写程序的时候,我们也要采用类似的方式,通过缩进来表示代码块的开始和结束. 认识缩进 在之前学过的的例子中,我们所编写 ...

  4. python默认的一个代码缩进是几个空格_python缩进长度是否统一

    Python 对代码的缩进要求非常严格,同一个级别代码块的缩进量必须一样,否则解释器会报 SyntaxError 异常错误. 在 Python 中,对于类定义.函数定义.流程控制语句.异常处理语句等, ...

  5. python中的缩进是长度统一吗_python缩进长度是否统一

    Python 对代码的缩进要求非常严格,同一个级别代码块的缩进量必须一样,否则解释器会报 SyntaxError 异常错误. 在 Python 中,对于类定义.函数定义.流程控制语句.异常处理语句等, ...

  6. python语言中缩进是强制的吗_python缩进是强制吗

    空白在Python中是重要的.事实上行首的空白是重要的.它称为缩进.在逻辑行首的空白(空格和制表符)用来决定逻辑行的缩进层次,从而用来决定语句的分组.这意味着同一层次的语句必须有相同的缩进.每一组这样 ...

  7. python缩进格式错误修改病句_python缩进错误,求教。

    展开全部 import random secret=random.randint(1,100) guess=0 tries=0 print("AHOY! I'm the Dread Pira ...

  8. python中下划线开头的命名_Python标识符规则 行与缩进 注释

    标识符 标识符(identifier)是指用来标识某个实体的一个符号,在不同的应用环境下有不同的含义.在计算机编程语言中,标识符(identifier)是用户编程时使用的名字,用于给变量.常量.函数. ...

  9. python的缩进规则是什么意思_Python编程思想(2):Python主要特性、命名规则与代码缩进...

    目录 那么什么是动态语言呢? 那么什么是弱类型语言和强类型语言呢? Python命名规则 缩进原则 李宁老师的<Python编程思想>上线了,囊括了Python的核心技术,以及Python ...

最新文章

  1. Linux系统日志介绍分析
  2. 快手二面:引入RabbitMQ后,你如何保证全链路数据100%不丢失?
  3. 用jamon来监控你的sql执行效率
  4. 学妹问我:怎么从网页下载所有图片?我答:天机不可泄露
  5. java引用hive高可用连接hive_Hiveserver2高可用实现
  6. Flask-Script扩展命令行manager = Manager(app)
  7. cos大乱斗服务器维护,《COS大乱斗》服务器数据互通公告
  8. 新一代“土豪专享”机来了!三星W2020通过WiFi联盟认证
  9. php 复制mysql数据库_PHP连接MySQL数据库的三种方式
  10. preact源码学习(3)
  11. 杭电多校HDU 6599 I Love Palindrome String (回文树)题解
  12. 【LeetCode】【字符串】题号:*541. 反转字符串 II
  13. 【0x50 动态规划】Mobile Service【线性DP】
  14. PHP简单同学录(连接数据库)
  15. gradle 使用 exclude 解决jar包冲突
  16. 程序员的人生——应届生北漂的第三天
  17. C++ Primer 读书笔记及知识点延伸 chapter1
  18. Hadoop的脚本语言Pig应用
  19. 十行代码,我用Python做一个迷你版的美图秀秀!
  20. 去叶剂行业调研报告 - 市场现状分析与发展前景预测

热门文章

  1. 网易互娱2019/09/19面试
  2. YHL--------------------------------------------------人生路规划
  3. 宝塔Linux面板介绍及安装命令!
  4. 领悟 Javascript
  5. CAD电气制图中怎么快速转换线缆类型?
  6. android studio 中制作简易的桌面组件
  7. CheckedListBox邦定隐藏值
  8. 信息论入门:信息守恒定律与纠错码
  9. 皮尔洛和c罗讲什么语言,够胆量!皮尔洛换下进球功臣C罗,赛后说出这么做的真正原因...
  10. python数字切片_剖析python切片「:」「::-1」「-1::」