从代码片段

时间:2016-04-27 21:37:21

标签: python

我有一个代码片段列表(不是代码行,但是部分行),我需要将其拆分为单个字符串,删除其中的所有内容。

我举一个例子。如果我有这样的一行:

method.functionName(foo.bar(type(pm.someVariable)))

在具有导入的文件中,可以是各种不同的类型,如:

import reallyLongFileModuleNameThatIsWrittenPoorly as method
from filename import someVariable
from rightyOh import *  # includes foo.bar static-method, as for this example
import polymaterial as pm

我希望脚本能够运行并出现:

["method.functionName()", "foo.bar()", "pm.someVariable", "type()"]
  • 需要args get()的方法。变量(全局或其他)不
  • 注意,包含类型是因为它是内置的,即使它不在导入中

最终,我喜欢我可以从命令行运行此脚本的功能,为其提供完整的文件路径,脚本将读取其内容以及它导入的任何文件。从那里开始,它应该是灵活的,并且支持大多数(如果不是全部)Python的导入语法。它将读取文件的信息,并在我提供的代码片段中查找方法/类实例/等的实例,如果有的话。

这不需要递归导入,我可能会提供自己的PYTHONPATH来搜索模块。

我觉得以前做过这件事。有任何想法吗?如果没有,我可能会使用Python的检查模块自己编写,但我认为使用import *的模块可能会有点棘手。我很想知道你们所有人的想法,谢谢你们

0 个答案:

没有答案
相关问题