0

我有一个自动完成脚本,我想修改它以完成类名、属性、方法等。在 python 中,当我这样做时:re.co<TAB>它应该给我一个匹配方法的列表。问题是,我不想解析re.py文件。我宁愿:

import re

然后dir(re)获取方法列表。但是怎么做???我试过:

imp_obj = exec('import re')

它拒绝工作if_py2 + 2虽然有效..

4

1 回答 1

0

最好的方法是使用内置__import__函数来导入模块,如下所示:

imp_obj = __import__('re')

您的代码可能不起作用,因为import它没有返回一个值,而exec('import re').

一般来说,exec在用户输入的文本上使用是个坏主意,因为它更有可能执行您不想执行的任意代码。

于 2012-11-28T08:01:07.927 回答