Python:给一个与函数同名的参数是不好的风格?

Ben*_*end 3 python coding-style

请考虑以下代码:

def localize(value, localize=None):
    # do something with the localize argument
Run Code Online (Sandbox Code Playgroud)

localize变量包含是否应该遵守全局本地化设置的信息.它通过三层代码以相同的名称调用.什么是较小的邪恶,

  • 使用参数名称或函数名称覆盖函数名称
  • 尽管它们具有完全相同的含义,但在此函数中使用的名称与在其余所有代码库中使用的名称相同?

localize函数不使用递归,因此无法调用自身不是问题.

/ edit:更改函数名称是不可能的,因为它是公共API.唯一的摆动空间在参数名称中.

Mar*_*ers 11

我会说这是糟糕的风格.您可以更改参数名称,而不是更改函数名称.也许你可以使用像locale或的名字localization?无论如何,名词可能是比动词更好的选择.