当我有几个论点时,我偶尔会发现自己在每个变量的末尾附加数字,但是我不能一直这样做,我想建立一个模式。
让我们说我有一个函数,它接受两个数字和一个数学运算的名称,然后它返回该运算的结果。
def do_math(input1, input2, operation):
# perform the operation and return result
编辑:请不要挂在这个例子上。我的问题适用于变量名称,而不仅仅是函数,而不仅仅是操作数
我通常最终得到类似input1
和input2
样式的内容,但由于Python使用从零开始的索引,因此感觉很奇怪。但input0
和input1
似乎也不对。有时候(就像在Jupyter笔记本中)我从一个变量开始,比如var
(只是一个例子,我通常更具描述性),然后最后添加另一个变量并称之为{{1}或者可能var1
。当我在笔记本中对原型进行原型设计时,我通常认为它非常重要,然后返回并将var2
或0
添加到第一个变量名称,但最后我的名字确实不一致。
编辑2:根据要求添加更典型/更现实的示例:
1
我已经检查了整个网站以及各种风格指南,包括https://www.python.org/dev/peps/pep-0008/#function-and-variable-names,但似乎找不到这个问题的答案。很可能没有首选方法可以做到这一点,但我很乐意听取你对有意义的建议。我知道这可能取决于确切的情况,但我希望我可以使用一些一致的命名约定来避免混淆和重新分解线。
我考虑但不爱的其他方式:
bits0 = hash_to_binary(hash0)
bits1 = hash_to_binary(hash1)
distance = hamming_distance(bits0, bits1)
,var_0
列表,元组或自定义数据结构:var_1
和vars[0]
(这在使用大量值时显然是首选,但对于2来说似乎有点过分)
vars[1]
,first_var
我倾向于的风格:
为了涵盖我不希望需要第二个变量的情况,可以从second_var
开始,然后在必要时添加var
。这与Python索引一致,因此var1
表示它是第二个实例变量。然后,在我比较Python中使用的ID,散列或其他单词的情况下,我可以将1
与id0
或id1
与hash0
进行比较。< / p>
答案 0 :(得分:-1)
我会以一种使它们不言自明的方式来命名变量。它使代码对其他任何人都更具可读性,并减少了对注释的需求。
对于数学运算,您可以使用简单的a
和b
或x
和y
。