“专业人士笔记”系列目录:

创帆云:Python成为专业人士笔记--强烈建议收藏!每日持续更新!​zhuanlan.zhihu.com

python中的空白tab缩进

Python使用缩进来定义控制和循环结构,这有助于提高Python的可读性,但是,它要求程序员密切注意空格缩进的使用:因为,编辑器错误的校准可能会导致代码出现意想不到的行为。

Python使用冒号(:)和缩进来显示代码块的开始和结束位置(如果你使用过其他另一种语言,请不要将其与三元运算符相混淆)。

也就是说,Python中的块,如函数、循环、if子句和其他结构,没有专门结束标识符,所有块都以冒号开头,然后包含它下面的对应缩进后的子代码行。

例如:

 def my_function(): #  这是一个函数定义。注意冒号(:) a = 2return a # 上面2行属于这个函数,因为它是Tab缩进的,返回 return 这一行也属于同一个函数 print(my_function())#这行代码不属于函数,因为没有用Tab进行缩进

或者:

 if a > b: # If 语句开始于这里print(a)#属于if里一部分else: # else 语句和if是同一级print(b)#属于else里面的子语句

只包含一行语句的块可以放在同一行上,尽管这种形式通常被认为是不好的代码习惯:

if a > b: print(a)
else: print(b)

尝试使用多个语句来实现这一点是行不通的:

if x > y: y = xprint(y)# IndentationError: unexpected indent 未知的间隔if x > y: while y != z: y -= 1SyntaxError: invalid syntax 语法错误

空块会导致IndentationError错误。当您有一个没有内容的块时,使用pass(一个什么都不做的命令) :

def will_be_implemented_later():pass

Spaces(空格) 对比. Tabs(制表符)

简而言之:

始终使用4个空格作为缩进,只使用制表符当然也可以,但是Python代码的样式指南PEP 8中声明空格是首选的(但我个人觉得很麻烦,我一般都用Tab)。

Python 3不允许混合使用制表符和空格进行缩进,在这种情况下,会产生编译时错误 : 在缩进中不一致地使用制表符和空格,程序将无法运行。

Python 2允许在缩进中混合制表符和空格,但强烈不建议这样做。制表符完成前面的缩进操作,会变成8个空格的倍数,由于编辑器通常被配置为以4个空格的倍数显示选项卡,这可能会导致一些细微的错误。

许多编辑器都有“制表符到空格”的配置。在配置编辑器时,应该区分制表符(‘t’)和制表键:制表符应该配置为显示8个空格,以匹配语言语义——至少在可能出现(意外)混合缩进的情况下, 编辑器还可以自动将制表符转换为空格 。

然而,往往直接将编辑器中的Tab键配置为自动插入4个空格,而不是插入制表符,这样更符合python程序开发中的简便性要求

用制表符和空格混合编写的Python源代码,或者使用非标准数量的缩进空格,可以使用autopep8(大多数Python安装都提供了一个不太强大的替代方案:reindent.py包来处理这个问题)

综上,我个人建议,对于具体替代方案不用做过多研究,只要在pycharm这样的开发环境中,用tab键缩进代码即可,编译能通过,大部分情况下是没有问题的。

今天分享就到这里,禁止任何形式转载,违者必究

python 全部缩进一行_Python成为专业人士笔记–程序行空白及tab缩进的作用相关推荐

  1. math python 向上取整_Python成为专业人士笔记-各数学运算操作深度剖析

    "专业人士笔记"系列目录: 创帆云:Python成为专业人士笔记--强烈建议收藏!每日持续更新!​zhuanlan.zhihu.com Python可以执行常见的数学运算符,包括整 ...

  2. python按位翻转_Python成为专业人士笔记-位操作符

    "专业人士笔记"系列目录:创帆云:Python成为专业人士笔记--强烈建议收藏!每日持续更新!​zhuanlan.zhihu.com 按位操作符直接操作二进制的字符串,这些是最基本 ...

  3. python方法和函数的格式是完全一样的_Python成为专业人士笔记-返回变量形式函数- str() 和 repr()...

    "专业人士笔记"系列目录:创帆云:Python成为专业人士笔记--强烈建议收藏!每日持续更新!​zhuanlan.zhihu.com 有两个函数可用于获取对象的可读表示 ,常用于打 ...

  4. python 全部缩进一行_Python(48)语言参考2:词法分析

    2. 词法分析 Python 程序由一个 解析器 读取.输入到解析器的是一个由 词法分析器 所生成的 形符 流,本章将描述词法分析器是如何将一个文件拆分为一个个形符的.Python 会将读取的程序文本 ...

  5. python 全部缩进一行_Python开发工具:缩进规则的使用

    参考文章来自:https://docs.python.org/2.0/ref/indentation.html 分享一波 前言 Python中的缩进(Indentation)决定了代码的作用域范围.这 ...

  6. [转载] [转载] python 去除字符串的标点符号 用_Python成为专业人士笔记–String字符串方法

    参考链接: Python字符串| 十六进制 hexdigits 参考链接: Python的字符串Strings decode "专业人士笔记"系列目录: 创帆云:Python成为专 ...

  7. [转载] python 去除字符串的标点符号 用_Python成为专业人士笔记–String字符串方法

    参考链接: Python的字符串Strings decode "专业人士笔记"系列目录: 创帆云:Python成为专业人士笔记--强烈建议收藏!每日持续更新!​zhuanlan.z ...

  8. 用python开发一款云笔记_Python成为专业人士笔记–os模块

    "专业人士笔记"系列目录:创帆云:Python成为专业人士笔记--强烈建议收藏!每日持续更新!​zhuanlan.zhihu.com 简述 这个模块提供了一些使用与操作系统相关功能 ...

  9. python列表操作计算列表长度并输出_Python成为专业人士笔记–List列表

    专业人士笔记"系列目录:创帆云:Python成为专业人士笔记--强烈建议收藏!每日持续更新!​zhuanlan.zhihu.com Python列表是Python程序中广泛使用的一种通用数据 ...

最新文章

  1. Swift语言中class、struct、enum的联系与区别
  2. 【转】Mac下安装和配置Redis
  3. php异常处理示例,php异常处理示例
  4. subversion SVN
  5. Java黑皮书课后题第1章:1.5(计算表达式)编写程序,显示以下式子的结果
  6. 前端开发时间格式的转换方法_开发人员投资时间而不浪费时间的10种方法
  7. oracle11g session,Oracle11g中Killsession心得
  8. [Python] 函数lambda(), filter(), map(), reduce()
  9. matlab 柱状图 折线图,数据可视化分析(柱状图、折线图、热力图)
  10. 惩罚函数求解matlab,matlab内点惩罚函数法
  11. linux查看udp丢包数量,Linux下UDP丢包问题分析思路
  12. 基于QT的科学计算器
  13. sspanel php,sspanelv3魔改版邮件设置指南及常用配置
  14. centos7.5安装snipe-it v5.1.2版本开源资产管理软件
  15. 单纤双向(Bidi)是如何实现的?会在5G前传中占一席之地吗?
  16. java excel 分页合并_Excel办公技巧——完整显示跨页合并的单元格
  17. 【JavaScript】实现移动小精灵
  18. pandas读取csv文件UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xca in position 37: invalid contin
  19. 每个程序员都应该读的数学书
  20. 几种编程语言类型的区分

热门文章

  1. oracle共享内存系统全局,Oracle10g 管理系统全局区简介
  2. java servlet ajax_javaweb中ajax请求后台servlet(实例)
  3. linux的python开发环境_linux下python开发环境之一——安装python
  4. java代码读写者问题_一整套Java线上故障排查技巧,爱了!
  5. php 课程节次周次提取,用PHP写一个最简单的解释器Part5(计算器最后一节,下节开始如何写个脚本语言)...
  6. oracle ora 16014,ORA-16014 ORA-00312错误解决
  7. 打造IE6的position:fixed整理篇
  8. 对网易云音乐软件的看法
  9. ODP.NET连接池性能计数器
  10. 双链表插入、删除操作单步解析(十四)