1

我在 python 包中实现了一个搜索算法(我们称之为 MyAlg)。由于算法超级复杂,包必须包含算法选项的辅助类。目前我正在自己开发整个包(我不是程序员),但是我希望以后有 1-2 个程序员加入这个项目。这将是我第一个涉及外部程序员的项目。因此,为了让他们的生活更轻松,我应该如何命名这个类:Options、OptionsMyAlg、MyAlgOptions 或其他任何东西?

除了http://www.joelonsoftware.com/articles/Wrong.html之外,你会建议我在这个主题中阅读什么?

谢谢尤里 [从这里发帖:http ://discuss.joelonsoftware.com/default.asp?design.4.684669.0将在这两个地方更新答案]

4

3 回答 3

8

我建议您阅读PEP8(Python 代码样式指南)。

于 2008-10-03T17:48:02.667 回答
2

只是命名它Options应该没问题。Python 标准库通常采用命名空间使不同包具有相同名称的事物变得容易和可管理的理念。例如,模块open中既是内置函数又是函数os,几个不同的模块定义了一个Error异常类,等等。

这就是为什么它通常被认为是不好的说法from some_module import *,因为它使您不清楚open您的代码指的是哪个等。

于 2008-10-03T17:50:55.593 回答
2

如果它们都适合一个文件,则将类命名为 Options。然后您的用户可以编写:

import myalg

searchOpts = myalg.Options()
searchOpts.whatever()

mySearcher = myalg.SearchAlg(searchOpts)
mySearcher.search("where's waldo?")

请注意,另一个答案中引用的 Python 样式指南建议包的名称应全部小写。

于 2008-10-03T17:56:15.410 回答