获取可用的模块
用PHP你有phpinfo()
列出已安装的模块,然后从那里查找他们做什么。
有没有办法看到哪些软件包/模块安装导入?
在解释器中inputhelp()
然后
To get a list of available modules, keywords, or topics, type "modules", "keywords", or "topics". Each module also comes with a one-line summary of what it does; to list the modules whose summaries contain a given word such as "spam", type "modules spam". help> modules
如果使用改进的交互式Python shell(又名“ REPL ”) ipython
,则可以键入import
(注意最后的空格),然后按[TAB]
键以获取可导入模块的列表。
正如在SO贴文中指出的那样,在安装(某些?)新模块之后,您将不得不重置模块的散列。 你可能不需要担心这个。
如果你不使用ipython
,而你还没有尝试过,那么值得一试。 它比基本的Python shell,或者我用过的其他任何REPL都好很多。
ipython
安装
如果你正在运行linux,最有可能的是一个ipython
包,你可以通过你的系统pipe理工具来安装。 其他人会想要遵循这些指示 。
如果您的安装路线要求您使用easy_install
,则可能需要考虑使用pip
。 pip
比easy_install
聪明一些,并且更好地跟踪文件位置。 如果你想卸载ipython
这是非常有用的。
列出软件包
请注意,上面的提示只列出了模块 。 对于还包含软件包(包含模块)的列表,您可以from
+ [TAB]
。 在有用的官方Python教程 的“模块”一章中可以find软件包和模块之间区别的解释。
#rtfm
另外需要注意的是,如果您对python非常陌生,那么浏览标准库文档所花费的时间可能会比根据其名称select模块要好。 Python的核心文档写得很好,组织良好。 图书馆文献目录中使用的组织组织 – 文件和目录访问 , 数据types等等,从模块/软件包名称中并不是很明显,而且在其他地方并没有真正使用,只是作为有价值的学习辅助工具。
正如aaronasterling所说,sys.path上的所有.py或.pyc文件都是一个模块,因为它可以被导入。 有脚本,可以让你find什么外部模块安装在网站包。
Yolk是一个Python命令行工具和库,用于获取有关由setuptools,easy_install和distutils安装的软件包的信息,还可以查询pypi软件包。
您可以列出可用模块,如下所示:
python -c "for dist in __import__('pkg_resources').working_set:print dist.project_name.replace('Python', '')"
这非常有用。 这里是一个脚本版本:
# To list all installed packages just execfile THIS file # execfile('list_all_pkgs.py') for dist in __import__('pkg_resources').working_set: print dist.project_name.replace('Python', '')