对不起,这个基本的问题,我真的无法通过谷歌找到我能理解的答案。究竟是一个Python库?
什么是非专业术语的Python库?它看起来像是你下载或导入并移动到某个文件夹以在python中添加特定功能的东西?
如果我下载了一个python库,它是否在/ usr/lib?
任何帮助,将不胜感激我真的失去了这一点!
对不起,这个基本的问题,我真的无法通过谷歌找到我能理解的答案。究竟是一个Python库?
什么是非专业术语的Python库?它看起来像是你下载或导入并移动到某个文件夹以在python中添加特定功能的东西?
如果我下载了一个python库,它是否在/ usr/lib?
任何帮助,将不胜感激我真的失去了这一点!
在Python中,术语“库”在涉及的Standard Library时最为常用。标准库随附Python,随之一同安装,使其模块可靠地用于任何Python代码。更一般意义上的代码的“库”在Python中有更具体的名称。
编码为import
的模块化组件代码可以编辑到您的Python代码中,它们被称为modules。 Python标准库本身是一个广泛的文件记录模块集合。模块由Python(有时是编译的二进制)代码组成;它们被打包成zip
档案,被称为包,以及元数据,安装参数,测试代码等。
包是由安装程序下载和安装的文件。 easy_install
和更好的pip
是两个最常见的软件包安装程序。这些都是用户友好的命令行工具。
要安装软件包,例如sh
,你会做
$ pip install sh
根据您的操作系统上,您可能要前缀sudo
该命令;否则,我相信你最终只会安装模块供您自己使用,而不是在系统范围内使用。
请参阅安装部分获取有关如何获得pip
运行的信息。
软件包用于提供安装,测试,使用和维护模块组成的源代码的工具。一个复杂的包可能包含多个模块。某些软件包将在例如使用模块代码的/usr/bin
。
软件包通常(如果它们足够成熟,可以广泛使用)通过Python Package Index分发。这是pip
去查找和下载软件包的地方。
如果您正在寻找一些代码来做一些特定的事情,请尝试在PyPI上搜索它。您也可以使用$ pip search '*text to search for in package descriptions*'
。它会搜索PyPI数据库并显示结果。
正如上面提到的,还有一些提供方便的方式来下载并安装Python包两种不同的命令行工具。 pip
是两者中较好的,并且需要安装setuptools
软件包。另一个实用程序easy_install
作为setuptools
的一部分安装。
setuptools
包Instructions on installing setuptools
被提供作为PyPI上包文件的一部分。基本上你下载的文件ez_setup.py
并运行它:
$ wget https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py -O - | python
Installation of pip
也同样简单,一旦你得到setuptools的安装:
$ curl -O https://raw.github.com/pypa/pip/master/contrib/get-pip.py
$ [sudo] python get-pip.py
我假设你正在谈论的模块,这是收集一组功能和/或自定义数据类型的一种手段。它们的存在是为了丰富Python标准库,它已经包含了超过200个包和模块(它们可以通过在Python解释器中输入help('modules')
来列出。模块应该被你的程序导入和使用。功能可以在一个包中组合在一起
Pypi,Python索引包,是一个这样的第三方模块的仓库,你可以找到一个现有的模块来完成你想要完成的任何任务,只需搜索Pypi对于利益您
有两个选项进行安装:
gunzip -c foo-1.0.tar.gz | tar xf -# unpacks into directory foo-1.0
cd foo-1.0
python setup.py install
pip
安装他们(virt_env)[email protected]$ pip install SomePackage==1.0
Unix/Linux上的典型安装路径是prefix/lib/pythonX.Y/site-packages
,其中前缀默认为/usr
。在Windows上,它的安装路径是prefix\Lib\site-packages
,其中前缀是C:\Program Files\Python
。
一般来说,库是一段可重用的代码。大多数有用的库集中在单个主题上,例如FTP,加密,API封装,气候模型,数据库访问,任何事情,真的。
Python附带一个rich standard library,带有一组核心任务。还有成千上万的图书馆可用于更多特殊用途,您可以使用这些图书馆,这些图书馆并未包含在标准发行版中。
(请注意,Python的术语module and package区分。)
一旦代码被写入,它需要被包装和涉及一对夫妇的规则。事实上,蟒蛇包装是一个相当广泛的话题,如breadth of this packaging guide所示。
一旦代码片段处于某种标准格式和目录布局中,就可以将其称为一个包。
有人发布关于Python包指数的包:
的Python包索引是软件Python编程语言的存储库。目前这里有34150个软件包。
从那里,任何人都可以只是一个单一的安装程序包:
$ pip install some-neato-package
现在这里的代码完全走的是依赖于你的系统设置。如果您使用一些常用工具,例如virtualenv和virtualenvwrapper,它可能会在/usr/lib/python3.2
或某处完全不同。
如果一切顺利的话,你将有一两分钟的许多个人月工作在您的指尖,当你 - 一旦你安装了一个包 - 可以在你的代码中使用库:
$ mkvirtualenv throwaway
New python executable in throwaway/bin/python
Installing distribute.......................................done.
Installing pip................done.
(throwaway) $ pip install requests # HTTP library
Downloading/unpacking requests
...
(throwaway) $ python
>>> import requests, re
>>> r = requests.get('http://stackoverflow.com/q/18474784/89391')
>>> value, unit = re.search('(\d+) ([a-zA-Z]+) ago', r.text).groups()
>>> print('You posted this question %s %s ago.' % (value, unit))
You posted this question 26 mins ago.
Python库被称为“模块”。这些模块以不同的对象或功能的形式提供常用的功能。例如,有一个模块具有可用于测试硬盘驱动器上是否存在文件的功能;有一些模块具有实现Web服务器或Web浏览器功能的功能;有模块可以处理图像;有模块可以创建图表和图形;有解析XML或HTML文件的模块;等等。
这个想法是有很多人可能想要做的事情与蟒蛇 - 例如读取HTML文件。每个人都可以编写python代码来自己做,但这很耗时。所以聪明的人写出一个模块,以一种明确的 - 并且有文件记录的方式做到这一点。其他人只需导入该模块并使用它。然后完成低级工作(例如读取HTML文件),然后您只需使用HTML文件即可完成您想要做的任何巧妙工作。
http://en.wikipedia.org/wiki/Library_(computing) – 2013-08-27 20:29:18