我刚刚开始使用python中的DEAP包。按照教程,我无法理解此语句:
toolbox.register("cross",tools.cxTwoPoint)
我知道tools.cxTwoPoint
是调用cxTwoPoint
函数。但是,我检查了源代码,cxTwoPoint
函数不在模块tools
,它是crossover.py
中定义的函数。另外,我在tools.py
中没有找到任何可能与crossover.py
或cxTwoPoint
有关的陈述。
有人可以帮助我吗?非常感谢!!
tools.py
用于对算法进行基准测试。从__init__.py
可以看出,有一个语句from .crossover import *
这意味着导入crossover
模块中的所有函数,该模块与__init__.py
位于同一目录。这为您提供了一种在其他文件中访问这些功能的简单方法。并且__init__.py
需要使 Python trent 目录包含包,如:__init__.py有什么用?.