在学习Python之前,我先从一些Objective-C / Cocoa书籍开始入手。据我回忆,大多数函数需要明确声明关键字参数。直到最近,我才忘记了这一点,只是在Python中使用位置参数。但最近,我遇到了一些错误,由于使用不当的位置而导致了这些错误——它们是一些难以察觉的小问题。
让我思考-一般来说,除非有特定需要使用非关键字参数,否则是否没有使用关键字参数的好理由?对于简单的函数,总是使用它们被认为是不好的风格吗?
我感觉随着我的50行程序经常扩展到500行或更多行,如果我习惯于始终使用关键字参数,那么代码将更容易阅读和维护。有什么理由不这样做呢?
更新:
我得到的普遍印象是这是一种风格偏好,有很多好的论据表明它们通常不应该用于非常简单的参数,但与良好的风格一致。在接受之前,我想澄清一下-是否存在任何特定的非风格问题-例如,重大的性能问题?
让我思考-一般来说,除非有特定需要使用非关键字参数,否则是否没有使用关键字参数的好理由?对于简单的函数,总是使用它们被认为是不好的风格吗?
我感觉随着我的50行程序经常扩展到500行或更多行,如果我习惯于始终使用关键字参数,那么代码将更容易阅读和维护。有什么理由不这样做呢?
更新:
我得到的普遍印象是这是一种风格偏好,有很多好的论据表明它们通常不应该用于非常简单的参数,但与良好的风格一致。在接受之前,我想澄清一下-是否存在任何特定的非风格问题-例如,重大的性能问题?
__init__
时应始终使用关键字参数。请参见http://fuhm.net/super-harmful/。尽管这不如您在此处提出的问题普遍,但这是支持您建议的一个论点。 - Joe White