--- title: Python slug: Python tags: - Python - Services translation_of: Learn/Server-side/Django translation_of_original: Python ---
Python 是一款直译式脚本语言,支持包括 Linux、Mac OS X 和 Microsoft Windows 在内的多种平台。
如果你是个初学者,可以考虑看看 Dive Into Python 。虽然它最后更新的时间是2004年,但依然是一部免费而且很棒的教程。 它含括了几乎所有Python 的基本元素,还有一些平常使用 Python 可以执行什么任务,像是对 Web 请求和文件的处理。如果对于 Python 已经有了基本的概念,就可以考虑看看 Text Processing In Python,这本书对于 Python 有着更进阶的介绍。
还有其他免费的电子书和在线资源可供参考:
译者注:如果有发现其他中文教程,欢迎编写本页来分享。
当你对这款语言有了基础的认识后, Code Like a Pythonista: Idiomatic Python 将帮你了解 Python 的一些特别之处,以及和其他语言的区别。
XPCOM 在 Mozilla 中用于支持跨语言通信(inter-language communication)。它仅原生支持 C++ <-> JavaScript 的交流。 Python 的 XPCOM 组件(也叫做 PyXPCOM)是将 Python 和 Mozilla 粘合在一块的低级别胶水(the low-level glue),使得用 JavaScript 或 C++ 编写的 XPCOM 组件既可以通过 Python 使用,反之亦然。PyXPCOM 并不默认包含在 Firefox 构建版本中,因此你须要使用第三方构建版本或自己构建一个版本来使用它。PyXPCOM中最知名的消费者是Komodo系列的产品。
从Mozilla 1.9版本开始就已经支持 (PyDOM) 。 这也让chrome 的XUL 和 HTML 作者在他们的 <script> 标签中使用python(再一次声明,官方版本的Firefox和Thunderbird版本还不支持)。
Python已经被众多Mozilla开发者应用于大量的app和框架中。更多信息请参考Python Environment and Tools for Mozilla.
工具列表在这里: http://k0s.org/toolbox/?language=python
Mozilla有大量的基于python的框架,包括:
[参考网址://bugzilla.mozilla.org/show_bug.cgi?id=835553]
在Mozilla-Central很多的正式版本,测试版本以及其他的框架和工具都是使用的python
python/
包含了通用的python代码,包括第三方镜像打包文件比如:pypi.python.orgtesting/mozbase/
包含了Mozbase
中用于mozilla-central的镜像打包文件一个虚拟化环境(virtualenv)包含在调用$OBJDIR/_virtualenv
版本的objdir
时 . 为了封装到虚拟环境中, 可编辑build/virtualenv_packages.txt . 这里有安装好了的版本 build/virtualenv/populate_virtualenv.py .
Python使用setup.py 来记录元数据和python包(python packages)的安装。运行 (e.g.) python setup.py install
将安装打包文件以及使python's import path中的模块可用。对python 2.x来说, 有几种不同的分布式或安装式模块存在,distutils
只在python标准库( python's standard library)的分布式封装中可用, distutils
可以上传到python封装索引python package index 并且安装python包。详情请参阅Python documentation on distutils
当 distutils
已经被加入python标准库中后, 初始化工具 setuptools是一个为封装和分发的第三方的特设标准。它几乎完全兼容distutils
,但是却非常关键的使封装文件具有“依赖关系”include dependencies 的能力,可以在setup.py
被调用的时候作为预置条件安装,同时也有了在开发者模式development mode下安装python包的能力. 这使得文件能通过 .pth files来编辑,这对于积极工作的人来说非常容易上手。 setuptools
也提供了一个通过 PyPI来快速安装打包文件和依赖关系的脚本easy_install
。比如安装 PyYAML包,运行
easy_install PyYAML
因为 setuptools
没有被包含在python中,你需要对其进行安装,你可以去到PyPI主页去下载setuptools
i,然后解压,在目录下运行python setup.py install
,你也可以使用快速安装脚本ez_setup.py
来进行安装,你可以在拥有root权限或管理员权限的python环境中下载和安装,或者在 bash shell中运行
sudo python <(curl http://peak.telecommunity.com/dist/ez_setup.py)
setuptools
也提供了一个虚拟环境virtualenv, 所以如果你想使用虚拟环境来开发,你不需要全局安装setuptools
,distribute是一个Mozilla大佬 Tarek Ziade 在setuptools
的一个,它完全兼容setuptools
,并修复了一些bug。
python包索引Python Package Index (PyPI) 是一个标准的python打包文件的分发点。如果你需要查找一些python的功能,这是一个很好的查询的地方。
参阅: http://k0s.org/portfolio/packaging.html