当前位置:  开发笔记 > 编程语言 > 正文

Python序列命名约定

如何解决《Python序列命名约定》经验,为你挑选了2个好方法。

由于python中没有显式输入,我希望能够使用命名约定区分序列和非序列.我已经用python编程了一段时间,我仍然没有找到任何逻辑/实用的方法来命名序列.当然,我经历了着名的PEP8,并对谷歌做了一些研究,似乎接受的惯例是在变量名的末尾添加字母"s".

假设我们有一系列"权重值",因此序列的变量名称应该是权重.到目前为止,这很好,但是有些情况下,某些单词以"s"结尾,恰好是命名变量的更合理的方式,而不是序列.或者,假设您将权重序列存储在序列中."s"命名约定将命名变量weightss,这很难看.我确信序列的命名约定更好.

您建议使用什么序列命名约定?



1> Ali Afshar..:

一般来说,避免这种行为.来自PEP8的通知

愚蠢的一致性是小思想的大人物

这正是调用变量weightss所做的事情.所以通常你的变量描述它们是什么,而不是根据一些命名约定:

weights = [44, 66, 88]
weight_groups = [[44, 66, 88], ...]

等等

从PEP8的同一部分:

但最重要的是:知道何时不一致 - 有时风格指南不适用.如有疑问,请使用您的最佳判断.查看其他示例并确定最佳效果.并且不要犹豫!



2> John Feminel..:

"s"命名约定将命名变量weightss,这很难看.我确信序列的命名约定更好.

我认为你所描述的约定意味着被解释为"每当你有一些东西的清单时,通过多元化它就清楚它是一个列表".例如,如果您有一个草实例列表,您可以调用它grasses,而不是grasss.我不认为这意味着你要把它当作字面意思.

如果更可读和有用,PEP总是建议您采用自己的方法.正如阿里所说,PEP的指导原则之一就是你不应该成为愚蠢的一致性的牺牲品.

推荐阅读
oDavid_仔o_880
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有