Python 为什么推荐蛇形命名法?驼峰式命名法的优缺点有哪些?(匈牙利命名法例子)
导读匈牙利命名法例子,关于变量的命名,这又是一个容易引发程序员论战的话题。如何命名才能更具有可读性、易写性与明义性呢?众说纷纭。本期“Python为什么”栏目,我们将聚焦于变量命名中的连接方式,来切入这块是非之地,想要回答的问题是——Python 为什么要推荐蛇...
关于变量的命名,这又是一个容易引发程序员论战的话题。如何命名才能更具有可读性、易写性与明义性呢?众说纷纭。
本期“Python为什么”栏目,我们将聚焦于变量命名中的连接方式,来切入这块是非之地,想要回答的问题是——Python 为什么要推荐蛇形命名法?
首先一点,对于单个字符或者单词 (例如:a、A、PYTHON、Cat),当它们被用作变量名时,大致有全小写、全大写和首字母大写这几种情况。编程语言中出现这些情况时,它们基本上跟英语的表达习惯是相同的。
但是,编程语言为了令变量名表达出更丰富的含义,通常需要使用多个单词或符号。 英语习惯使用空格来间隔开单词,然而这种用法在编程语言中会带来一些麻烦,所以程序员们就创造出了另外的方法:
总体而言,这些命名法都是要克服单词间的空格,从而把不同单词串连起来, 最终达到创造出一种新的“单词”的效果。
我画了一张思维导图,大略区分了这几种命名法:
如果按照受众量与知名程度排名,毫无疑问排前两位的是驼峰命名法和蛇形命名法。
我们可以简单比较一下它们的优缺点:
由此可见,它们各有优缺点,但哪一方都不具有压倒性。我个人稍微偏好于蛇形命名法,但是在需要用驼峰命名的时候(比如写 Java 时),也能无障碍切换。
需要指出的是,Python 也推荐使用驼峰式命名,那是在类名、Type 变量、异常 exception 名这些情况。而在包名、模块名、方法名和普通变量名 等情况,则是推荐用蛇形命名(lower_case_with_underscores)。
那么,为什么 Python 会推荐用蛇形命名法呢?
最大的原因是历史原因。 蛇形命名方式起源于 1960 年代,那时它甚至还没有特定的名称。Python 从 C 语言中借鉴过来后,给它起名为“lower_case_with_underscores”,即带下划线的小写命名。
直到 21 世纪初的几年,在 Intel 和 Ruby 社区中,才有人开始以“snake_case”即蛇形命名来称呼它。
现今有不少编程语言在某些场景下会推荐使用蛇形命名法,而 Python 则是其中最早这么做的之一,并且是使用场景最多的语言之一。
维基百科上统计了一份清单,可以看出 Python 对它的偏好:
其次,还有一个比较重要的原因,那就是 Python 对下划线“_”的独特偏爱。
比如类似于 _xx、__xx、xx_、__xx__ 等等的写法就随处可见,甚至还有孤零零一个下划线 _ 作为变量的特殊情况。这样看来,下划线作为单词间的连接,恰恰是这种传统习惯的一部分。
最后,我还看到过一种解释:因为 Python 是蟒蛇啊,理所当然是用蛇形命名……
对于这三个解释,你们是如何感想的呢?对于蛇形命名法,大家是喜欢还是不喜欢呢?欢迎留言交流。
写在最后:本文属于“Python为什么”系列(Python猫出品),该系列主要关注 Python 的语法、设计和发展等话题,以一个个“为什么”式的问题为切入点,试着展现 Python 的迷人魅力。部分话题会推出视频版,请在 B 站收看,观看地址:https://space.bilibili.com/97566624/video
公众号【Python猫】, 本号连载优质的系列文章,有Python为什么系列、喵星哲学猫系列、Python进阶系列、好书推荐系列、技术写作、优质英文推荐与翻译等等,欢迎关注哦。
匈牙利命名法例子,看了这么多代码,谈一谈代码风格
其实在交流群里经常能看到大家发出来的代码,可以看出很多录友对代码规范应该不甚了解,代码看起来并不舒服。所以呢,我给大家讲一讲代码规范,我主要以C++代码为例。需要强调一下,代码规范并不是仅仅是让代码看着舒服,这是一个很重要的习惯。题外话工作...
匈牙利命名法例子,几十种变量命名规则你知道多少?
虽然现在的大公司对java程序员的要求在逐渐提高,程序员的入职门槛也在变高,但是不变的考核标准是对java基础知识的考察。正在学习java零基础教程的朋友们,肯定都接触过关于java变量的知识点,其中,java的变量命名规则是需要认真学习的...
青灯教育|蛇形命名,驼峰命名,你的选择?(匈牙利命名法例子)
关于今天要讲的,小编想想还有点小激动。那就是关于变量的命名,这个一直都是容易引起程序员论战的话题。如何命名才更具可读性、易写性以及明义性?程序命名常使用的是英文单词,当他们被作为变量名时,有全小写、全大写、首字母大写几种情况,程序语言中出现...
匈牙利命名法例子,四种PLC程序命名通用规则,程序档次瞬间就拉高了
前言程序员们为了自己的代码更容易地在同行之间交流,所以多采取统一的可读性比较好的命名方式。目前业界共有四种命名规则:驼峰命名法、匈牙利命名法、帕斯卡命名法和下划线命名法,其中前三种是较为流行的命名法。以上命名规则可视为一种惯例,并无绝对与强...
为什么Python推荐Snake-Case蛇形命名法?(匈牙利命名法例子)
虽然Camel是一个不错的选择> Photo by Timothy Dykes on Unsplash 关于变量的命名,这是另一个容易引起程序员争论的话题。 命名如何更具可读性,易写性和清晰性? 有很多意见。在" Why Py...
Python 为什么推荐蛇形命名法?驼峰式命名法的优缺点有哪些?(匈牙利命名法例子)
关于变量的命名,这又是一个容易引发程序员论战的话题。如何命名才能更具有可读性、易写性与明义性呢?众说纷纭。本期“Python为什么”栏目,我们将聚焦于变量命名中的连接方式,来切入这块是非之地,想要回答的问题是——Python 为什么要推荐蛇...
匈牙利命名法例子,写PLC程序从这四个方面入手,质量都很高
今天,我们来谈谈:如何才能写出不光是外观科学规范,而且实用性也很强的PLC程序?文章分为四个部分,分别从PLC程序的设计规范、设计要求、编程建议和命名规则四个方面来阐述。关注公众号【自动化与工程技术】,获取更多自控资讯!一、PLC程的设计要...
从零开始C语言-02 命名方式and基本数据类型(匈牙利命名法例子)
命名方式任何程序员都应该保持一个良好的编码习惯,以便于以后的维护常见的命名方式分别有驼峰命名法、匈牙利命名法、帕斯卡命名法和下划线命名法,其中前三种是较为流行的命名法骆驼式命名法就是当变量名或函数名是由一个或多个单词连结在一起,而构成的唯...
极右翼抬头,匈牙利通过法案允许政府接管该国最古老学术机构(匈牙利命名法例子)
匈牙利议会7月2日通过了一项争议性法案,该法案将匈牙利最古老的科研机构置于极右翼总理维克托·欧尔班(Viktor Orban)政府的直接控制之下。据半岛电视台报道,该法案得到了199名议员中131人的支持,允许政府接管有200年历史的匈牙利...
- 1暗黑者第二季,2015综艺年度网剧《暗黑者2》:“去网造芯”的良心网剧
- 2暗黑者第二季,等了13年,上线一周播放破亿,潘粤明这次被删得还剩什么?
- 3暗黑者第二季,排名前五的刑侦悬疑剧《暗黑者》成就了郭京飞,却远不如原著小说
- 4暗黑者第二季,暗黑者2薛天郑佳上演情感纠葛 两人的结局到底会怎样
- 5时光音乐会:陈立农太会唱小情歌了,比梁咏琪的《新鲜》还要甜!(有哪些很甜很轻快的歌曲)
- 6有哪些很甜很轻快的歌曲,感恩《我们民谣2022》,我又开始听歌了!“私人民谣歌单”TOP20
- 7有哪些很甜很轻快的歌曲,我们的歌二轮混战歌单,林志炫唱《破茧》,本期依然没有马嘉祺
- 8有哪些很甜很轻快的歌曲,令人心醉不已的老歌,如酒般醇厚的嗓音
- 9「十全十美」- 080 || 非常喜庆的十首《民乐合奏》,曲风欢快、喜庆(有哪些很甜很轻快的歌曲)
发表观点(63条)