Python通过不同模块访问相同的接口

时间:2016-12-02 09:24:28

标签: python

作为一名缺乏经验的Python用户,我想向更有经验的用户询问最佳方法。

我想创建一系列具有相同界面的模块

  • GetDataDescription(文件)
  • 的GetData(文件)

每个模块都会接收一个文本文件并以一种简单的方式处理它。它将返回提取的数据和数据本身的描述。 (例如“字母e的计数”,73或“数字字符”,760等)。

我正在构建它,通过添加具有简单操作但相同接口的模块使其可扩展。

因此,从我的主代码中我想导入一个模块并对该模块执行必要的操作(即GetDataDescription和GetData)。然后,我可以创建一个已导入的模块名称列表,并说 - 在这些模块中转到过程数据

我的方法是: -

import countLetters

moduleList = ['countLetters']

m = __import__ (moduleList[0])
func = getattr(m,'countLetters')(logFile)
description = func.GetDataDescription()
print("Data Description: ", description)

但是,这会导致NameError:名称'description'未定义。

我应该采用不同的,更多的Pythonesque方法,还是继续调试。

如果是debug,那么我上面的代码出了什么问题?

谢谢!

0 个答案:

没有答案