起因
最近在学机器学习,用的是Python,看到教程中建议矩阵用大写字母表示,向量用小写字母表示,因为这符合数学书写习惯。但是Python标准中建议使用小写加下划线的形式来命名变量,那究竟怎样才合适呢?
解决
在Python的PEP8文档中关于变量名的建议如下:
Function and Variable Names Function names should be lowercase, with words separated by underscores as necessary to improve readability. Variable names follow the same convention as function names. mixedCase is allowed only in contexts where that’s already the prevailing style (e.g. threading.py), to retain backwards compatibility.
百度翻译翻译过来是
函数名称应为小写,必要时用下划线分隔单词以提高可读性。 变量名称遵循与函数名称相同的约定。 只有在已经是流行样式(例如 threading.py)的上下文中才允许使用 mixedCase,以保持向后兼容性。
是建议我们使用小写加下划线的形式来命名的,但是也允许一些已经存在的,流行的惯例规则
数学上习惯使用单个大写字母表示矩阵,单个小写字母表示向量
我们制定和遵守PEP8等命名规则的目的就是让我们便于阅读源码,使代码一看就知道这个是变量,这个是常量…提升效率 那么基于此,我认为矩阵应该使用单个大写字母表示,这符合Python PEP8中的第三句话,而且提升了我们阅读源码的效率,并没有起到太大的反作用。 有的可能就只是C和c、I和l、O和o、P和p、S和s、U和u、V和v、W和w、X和x、Z和z以及变量和常量可能有时候会搞混。常量一般在模块级别上定义,搞混的可能性也很小。
|