关于 python 的缩进「建议收藏」

关于 python 的缩进「建议收藏」python对缩进是敏感的,而大多教程对应缩进也只是几句话带过,对新手十分不友好,本文就把python常见的缩进问题做了一些整理。

大家好,又见面了,我是你们的朋友全栈君。


引言

python 对缩进是敏感的,而大多教程对缩进规则,往往就几句话带过,对于没有其他语言基础的初学者,十分不友好,本文就把python常见的缩进问题做了一些整理。


一、Python缩进长度及缩进字符

常看到一些Python缩进错误的解读,“tab符和空格做为缩进不能混用”“缩进一定是4个空格”。实际上并没有这些限制,例如图中的示例就可以正常运行。

在这里插入图片描述

空格tab符通常都以空白形式显示。如果混用,代码容易意混淆,增加维护及调试的困难、降低了代码易读性。因此 Python PEP8 编码规范,指导使用4个空格作为缩进。而实际开发,比较复杂的代码则会选择2个空格做为缩进,这样更易于阅读那些嵌套比较深的代码。
在这里插入图片描述

二、Python代码缩进规则

1.物理行和逻辑行的概念

判断缩进,首先要区分物理行和逻辑行,缩进是针对逻辑行的。

物理行:代码编辑器中显示的代码,每一行内容是一个物理行。
在这里插入图片描述

逻辑行:Python解释器对代码进行解释,一个语句是一个逻辑行。
在这里插入图片描述


python代码中

1、使用";"号将两个或多个逻辑行合并成一个物理行。
2、使用"\"号连接两个物理行。
3、字典、列表等变量赋值语句,是可以直接书写为多个物理行的。

在这里插入图片描述


2.缩进规则

1、逻辑行的“首行”需要顶格,即无缩进(也就是一份源码的第一个逻辑行)
代码如下(示例):

在这里插入图片描述


2、相同逻辑层保持相同的缩进
在这里插入图片描述


3、”:”标记一个新的逻辑层
增加缩进表示进入下一个代码层
减少缩进表示返回上一个代码层
在这里插入图片描述


三、常用python IDE的缩进相关

1、常用的IDE都会有自动缩进的机制,即输入“:”号之后,按“回车”会自动进行缩进。
例如pycharm的代码编辑:
在这里插入图片描述
2、设置使用什么字符标识缩进、tab符做为缩进、一个tab代替几个空格、行连接缩进量,等等。


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/125214.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • phpstorm2021永久激活码【2021.8最新】

    (phpstorm2021永久激活码)本文适用于JetBrains家族所有ide,包括IntelliJidea,phpstorm,webstorm,pycharm,datagrip等。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html…

    2022年3月25日
    271
  • tar.bz2压缩方法「建议收藏」

    tar.bz2压缩方法「建议收藏」bzip2 -d  gcc-4.1.0.tar.bz2 —上面解压完之后执行下面的命令。tar-xvfgcc-4.1.0.tar或tar-xvf*.tar解完之后会出现多一个文件夹gcc-4.1.0

    2022年6月5日
    73
  • 寻找大素数算法

    寻找大素数算法packageprimeNumber;importjava.util.Arrays;importjava.util.Scanner;/***本文系作者高中时候与同学讨论的结果生成结果是依据素数定理推倒而来依据此公式可以求出无限大的素数但非公理次计算结果虽然可以求无限大的素数但仍需验证**@author王伟2020-3-18**/publi…

    2022年6月18日
    20
  • 金蝶erp管理系统下载_erp 金蝶

    金蝶erp管理系统下载_erp 金蝶源码说明:超强的工作流系统,强大的可视化工作流编辑器,灵活自定义表单设计,充分实现企业基于工作流的各项业务管理,与其他模块数据(如HRM等)完美结合。全面综合的任务系统,实现基于信息录入、单据管理、业务协作、工作流转、任务提醒、统计分析等的智能管理。所有单据均支持上传附件功能;且报价单、销售合同、采购订单、发货出库、入库单、派工单等所有模板均支持自定义编辑打印。集成功能实用的CRM系统、进…

    2022年9月16日
    1
  • 【架构设计】领域模型(概念模型) 、逻辑模型、物理模型、贫血模型、充血模型概念总结【待读与标记】[通俗易懂]

    本文选自:http://www.jianshu.com/p/fe45506ea358http://blog.csdn.net/zsy_gemini/article/details/9060105http://wuaner.iteye.com/blog/856450背景关于领域模型的知识应该是有两种,一种是来源于最初的传统软件开发过程,一种来源于领域驱动设计(DDD),这两者很容易混淆。1.领域模…

    2022年4月12日
    49
  • mysql语句截取字符串_sql截取字符串的函数

    mysql语句截取字符串_sql截取字符串的函数今天建视图时,用到了MySQL中的字符串截取,很是方便感觉上MySQL的字符串函数截取字符,比用程序截取(如PHP或JAVA)来得强大,所以在这里做一个记录,希望对大家有用。函数:1、从左开始截取字符串left(str,length)说明:left(被截取字段,截取长度)例:selectleft(content,200)asabstractfrommy_content_t2、从右开始截…

    2022年10月2日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号