18720358503 在线客服 人才招聘 返回顶部
企业动态 技术分享 行业动态

Python 为何用 # 号作注解符?

2021-04-12分享 "> 对不起,没有下一图集了!">

相关测算机語言中的注解,其必需性大部分分已经为大家所的共鸣。

却不知道相关注解的规范,这一话题讨论探讨好似大伙儿之前聊完的缩近、停止符和取名字方式一样,世事多变。

注解符一般 可分为二种,即行注解与块注解(inline/block),她们不在一样的测算机語言中的标识能够说让人应接不暇。

比如行注解符,它至少有以下的 17 种之多(来源于wiki百度百科):

 Python 为什么用 # 号作注释符?

在这其中两个很大的阵营各自是“//”与“#”号:

// 注解符:ActionScript, C (C99), C , C#, D, F#, Go, Java, JavaScript, Kotlin, Object Pascal (Delphi), Objective-C, PHP, Rust, Scala, SASS, Swift, Xojo # 注解符:Bourne shell and other UNIX shells, Cobra, Perl, Python, Ruby, Seed7, Windows PowerShell, PHP, R, Make, Maple, Elixir, Nim

那么,**Python 为什么“#”号作注解符,而并不是“//”呢? **

这一难题或许无法从剖析的高效率率、标识的识别度和输入的方便快捷性等方面答复,因为她们大部分分没有区别。

都没有找寻官方网网的描述,但是从这类注解符的阵营中,早就不容易很难获得一个较为合理的描述:


Python 在铸就之初,从 C 和 Shell 语言中仿效了很多物件,但它是一种脚本制作語言,因此在注解符这一更加基本的语言要素上,就侧重了脚本制作語言的传统式式。

在一些“类脚本制作語言”中,比如 yaml、conf 和 ini 等文档文件格式的自然环境自变量,她们大多数数也是采用脚本制作語言的“#”号作为注解符。

因而 ,Python 内行人人注解符的选择,大概可以梳理为一种历史时间時间原因,即仿效了 Shell 脚本制作語言的书写。

比照于行注解符的多种多样多种多样,块注解符更加是让人应接不暇:

 Python 为什么用 # 号作注释符?  Python 为什么用 # 号作注释符?

大部分分书写便是我没见过的,一些甚至是没法承受的,槽点过量!

在这里一份表格里,大伙儿看不到 Python,因为严治苛具体实际意义上讲,Python 并没有块注解符!

一般来讲,大家在不断的每列内容前边加“#”号,保证块注解的具体实际效果。块注解被作为是很多行注解。

PEP-8 中是那麼建议的:

Each line of ment starts with a # and a single space (unless it is indented text ment).

一些人曾在 Twitter 上提出问题,为什么 Python 没有块注解符?

Guido 答复称,可以将几行标识符串做为块注解:

 Python 为什么用 # 号作注释符?

Python 的几行标识符串用三对单引号或双引号说明,它还可以做为文字文本文档标识符串(即Documentation Strings,简称docstrings)。

但是,将它做为几行注解符运用,在词义上则有点儿儿错误劲——它说明的是一段标识符串,虽然没有赋值给变量,不可易转换成编号,但是它其实不是词义上的注解。

由于脚本制作語言的特性,它允许大伙儿写一段“没根的标识符串”,在英文的英语的语法上沒有难题,也没有不良反应(negative effects),但是,倘若把它作为注解运用,这便是一种欠佳反映(side effects)了。

从这一点上考虑到到,我虽然不遏制一些人把几行标识符串书写做为块注解,但是我可以更明显强烈推荐大家运用“#”号作注解。

另外,对于不起作用的编号,最好的做法就是马上删除,倘若过后发现有务必,再回到修改。详细的几行注解尽量放进文字文本文档标识符串中,那般在重要编号中便会十分少出现几行注解的情况了。

对于 Python 的注解符应用方式,大家是如何想的呢?热情热烈欢迎留言板留言板留言板留言沟通交流沟通交流。

1、Python为什么运用缩近去划分编码块?

2、Python 的缩近是不是绝种人的本性的设计方案计划方案?

3、Python 为什么不用分号作语句停止符?

4、Python 为何沒有 main 涵数?为什么我不会会明显强烈推荐写 main 涵数?

5、Python 为什么明显强烈推荐环状取名法?

6、Python 为什么兼容问题 i 自增英文的英语的语法,出不来示 实际操作符?

7、Python 为什么只需一条语句“a,b=b,a”,就可以马上交换两个变量?

 Python 为什么用 # 号作注释符?
"> 对不起,没有下一图集了!">
在线咨询