#!/usr/bin/env python # coding: utf-8 # > 作者:Emmanuelle Gouillart # 与了解Numpy和Scipy中的所有函数相比,通过文档和可用的帮助快捷地找到信息更重要。这里是获得信息的一些方式: # # - 在Ipython中,`help 方法`打开函数的文档字符串。只需要输入函数名的起始字母,使用tab完成来显示匹配到的函数。 # # ```python # In [204]: help np.v # np.vander np.vdot np.version np.void0 np.vstack # np.var np.vectorize np.void np.vsplit # # In [204]: help np.vander # # ``` # # 在Ipython中无法为帮助和问答打开一个独立的窗口;但是,可以打开另一个Ipython shell仅显示帮助和文档字符串... # # - Numpy和Scipy的文档可以在线查看http://docs.scipy.org/doc 。两个包的参考文档(http://docs.scipy.org/doc/numpy/reference/ 和 http://docs.scipy.org/doc/scipy/reference/) 中的搜索按钮非常有用。 # # 在这个网站上也可以找到不同主题的教程以及所有文档完整的API。 # ![](http://www.scipy-lectures.org/_images/scipy_doc.png) # # - Numpy和Scipy的文档由用户在wiki http://docs.scipy.org/doc/numpy/ 上定期丰富和更新。因此,一些API文档(docstrings)在wiki上更清晰 详尽,你可能更想在wiki上读取文档而不是在官方文档网站上。注意任何人都可以在wiki上创建一个帐号来写更好的文档;这是为开源项目做贡献以及改善你所使用的工具的简单方式! # # ![](http://www.scipy-lectures.org/_images/docwiki.png) # # - Scipy central http://central.scipy.org/ 给出了许多常见问题的做法,比如拟合数据点,求解ODE等。 # # - Matplotlib网站 http://matplotlib.org/ 以一个拥有大量图表的非常漂亮的***画廊***为特色,每个图表都显示了源代码及生成的图表。这对于通过例子来学习非常有帮助。在网站上也可以找到更多的标准文档。 # # ![](http://www.scipy-lectures.org/_images/matplotlib.png) # # # 最后,两个更加“技术”的可能性也非常有用: # # - 在Ipython中,魔法函数`%psearch`搜索匹配模式的对象。例如,如果不知道函数的准确名称,这将非常有用。 # # ```python # # In [3]: import numpy as np # In [4]: %psearch np.diag* # np.diag # np.diagflat # np.diagonal # # ``` # # - `numpy.lookfor` 查找指定模块文档字符串中的关键字。 # # ```python # # In [45]: numpy.lookfor('convolution') # Search results for 'convolution' # -------------------------------- # numpy.convolve # Returns the discrete, linear convolution of two one-dimensional # sequences. # numpy.bartlett # Return the Bartlett window. # numpy.correlate # Discrete, linear correlation of two 1-dimensional sequences. # In [46]: numpy.lookfor('remove', module='os') # Search results for 'remove' # --------------------------- # os.remove # remove(path) # os.removedirs # removedirs(path) # os.rmdir # rmdir(path) # os.unlink # unlink(path) # os.walk # Directory tree generator. # # ``` # # # - 如果上面列出的所有方法都失败了(并且Google也没有答案)... 不要绝望!你的问题适合向邮件组写一封邮件:如果你很好的描述了你的问题,那么你应该会很快得到答案。Python科学计算的专家经常通过邮件组给出非常有启发性的解释。 # - Numpy讨论(numpy-discussion@scipy.org): 全部是关于Numpy数组,操作数据,索引等问题。 # - SciPy用户列表(scipy-user@scipy.org): 用Python进行科学计算,高级数据处理,特别是scipy包的使用。 # - [matplotlib-users@lists.sourceforge.net](matplotlib-users@lists.sourceforge.net) 用matplotlib绘图。 # In[ ]: