如何命名带有首字母缩略词的变量?
比如在Java中,我使用数据传输对象(Data Transfer Object)时是这样写的:
ExampleDTO exampleDTO = new ExampleDTO();
那么,如果我遵循PEP 8(也就是用小写字母和下划线的命名方式),在Python中类似的命名规则应该怎么用呢?
3 个回答
-1
为什么要使用缩写呢?我尽量避免使用它们。因为缩写会让代码变得模糊不清,阅读起来也很困难。最糟糕的是,它们可能会因为误解而引入错误(比如,RndCmp是指随机比较,而不是四舍五入的复数)。
什么是DTO?它在两年后还会被使用吗?每个新来的小伙伴会立刻知道它是什么意思吗?五年后呢?它会和其他东西混淆吗?(比如,确定性对象和可转移对象?)
使用缩写的唯一真正原因就是程序员的懒惰。在会议上,我喜欢问问变量名里的缩写,结果80%的时候没人真的知道它们的意思。就连那些经验丰富的老手也会忘记几年前它们的含义。有些缩写甚至有多个意思。
现在有了很棒的集成开发环境(IDE),可以自动补全变量名,懒惰就更不是一个好理由了。根据经验,虽然无法完全避免缩写的出现,但我们应该始终对它们提出质疑。
0
你可以看看 Python风格指南。
我个人在变量命名时喜欢用驼峰式命名法,而在方法名称中则使用下划线(_)分隔。
10
最符合PEP-8风格的写法可能是...
example_dto = ExampleDTO()