我希望这个问题不会被关闭/投票,因为我花了很多时间来编码。
作为一个更专注于Python的开发人员,我尝试遵循PEP8标准,但对于一些变量名称,它对我来说变得非常棘手。
我们说温度这个词。
如果我想要一个变量来存储温度列表,我会给它命名:
temperature_list = []
然而,随着代码变得越来越复杂,假设我必须使用temperature_list作为参数调用函数:
calling_function(variable_with_long_name, temperature_list, another_long_name_variable)
你可以清楚地看到它在哪里......
所以我决定将temperature_list
重命名为temp_list
。哪个听起来不错?对吧?
...除
如果我还想将TEMPORARY FILES存储在列表中,我可能会遇到:
temp_list = []
temp_file_list = []
这可能会导致我的变量开始变得混乱并且使代码变得有点棘手。
当遇到这样的情况时,程序员会采取什么惯例和其他行动?是否有任何关于此类案例的参考,例如某些名词的良好变量名称的案例手册?
- 编辑
如果你投票支持关闭它,至少可以解释原因! - '
答案 0 :(得分:1)
通常,您需要找到不太长的聪明名称,但要正确解释变量。当这个失败,或者有太多的变量在做类似的工作时(所以会有密切的名字),你可以选择解释文档字符串或注释中的变量,并给出短名称(仍然有意义的名称,而不是a,b等...)
def function(a, b):
"""
l_variable used for bla bla,
lo_variable is good for bla bla.
"""
l_variable = 12
lo_variable = 123
lon_variable = 1234 # This is an integer bla bla
当你真的需要长变量名时,我有时无法避免自己,我试图降低行长度而不破坏代码的目的。例如,在函数调用中断行(如示例所示)。
def f(a, b, c):
print a + b + c
this_is_a_long_variable_name = "Stack"
this_is_an_even_longer_variable_name = "Over"
this_is_the_longest_variable_name_in_this_example = "flow"
f(this_is_a_long_variable_name,
this_is_an_even_longer_variable_name,
this_is_the_longest_variable_name_in_this_example)