Differences between revisions 19 and 28 (spanning 9 versions)
Revision 19 as of 2008-10-20 16:04:42
Size: 27325
Editor: ZoomQuiet
Comment:
Revision 28 as of 2008-10-25 01:55:44
Size: 43082
Editor: pem
Comment: 给科学计算部分添加内容
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
## page was renamed from ObpLovelyPython/LpyAttach-residx
Line 4: Line 3:
##含有章节索引导航的 ZPyUG 文章通用模板
Line 10: Line 8:
||'''status'''|| 草稿|| ZoomQuiet,Liz|| 完成度:60% ||

##在这里看到比较多的python相关库http://xiaoc.blog.ccidnet.com/blog-htm-do-showone-uid-234679-type-blog-itemid-436104.html by liz 081019
||'''status'''|| 草稿|| ZoomQuiet,Liz|| 完成度:99% ||
Line 123: Line 120:
  * cssutils - CSS library for Python
   * 访问地址: http://cthedot.de/cssutils/
   * 精巧地址: http://bit.ly/2rmUQ0
   * CSS文档专用处理支持
Line 136: Line 137:
   * 啄木鸟社区组织有翻译工程: http://wiki.woodpecker.org.cn/moin/TPiP 有兴趣的读者可以随时加入;-)    * 啄木鸟社区组织有翻译工程: http://wiki.woodpecker.org.cn/moin/TPiP (精巧地址:http://bit.ly/3IvsMk) 有兴趣的读者可以随时加入;-)
Line 140: Line 141:
   * http://wiki.woodpecker.org.cn/moin/AllAboutText 有部分综述;    * 部分综述:
    * 访问地址:
http://wiki.woodpecker.org.cn/moin/AllAboutText
   * 精巧地址:http://bit.ly/4wDWKD
Line 179: Line 182:
== Py DB应用 == == Py 数据库应用 ==
Line 281: Line 284:
  * 进一步的请参考官方网站的汇总介绍:WebProgramming - PythonInfo Wiki
   * 访问地址: http://wiki.python.org/moin/WebProgramming
   * 精巧地址: http://bit.ly/jzKnm
  以下介绍一些流行框架:
Line 320: Line 327:
  * Twisted
   * 访问地址: http://twistedmatrix.com/trac/
   * 精巧地址: http://bit.ly/1VhU8T
   * Twisted Matrix 是一种越来越受欢迎的纯 Python 框架,用来进行网络服务和应用程序的编程. 虽然 Twisted Matrix 中有大量松散耦合的模块化组件,但该框架的中心概念还是非阻塞异步服务器这一思想,可以帮助程序员快速构建出,能在繁重负载的情况下依然极高的效率的系统!
Line 340: Line 351:
  常见嵌入式设备支持:   常见嵌入式系统设备~手机平台的支持:
Line 351: Line 362:
   * Android 由 开放手机联盟(一个由 30 多家科技公司和手机公司组成的团体)组织开发开发;Android 是第一个完整开放的免费手机平台;准备应用在Google 新一代手机平台中!

 深入::
  Telit 是一家专业设计和生产无线模块产品公司,值得注意的是,它几乎在所的最新产品中集成了嵌入式Python解释器,这使用者就可以使用Python脚本快速地开发应用,这些Python脚本可以保存在模块内部运行,而不用另外的MCU去和模块行AT命令交互;
   * 访问地址: http://www.telit.com/en/products/python.php
   * 精巧地址: http://bit.ly/4uJsAU

 前沿::
   * Android 由 开放手机联盟(一个由 30 多家科技公司和手机公司组成的团体)组织开发开发;Android 是第一个完整开放的免费手机平台;准备应用在Google 新一代手机平台中!


前沿::
  对于更加广泛的有嵌入式GNU/Linux系统的设备,Python 同样可以进驻!
Line 363: Line 371:
  * Telit 是一家专业设计和生产无线模块产品的公司,值得注意的是,它几乎在所有的最新产品中集成了嵌入式Python解释器,这样使用者就可以使用Python脚本快速地开发应用,这些Python脚本可以保存在模块内部运行,而不用另外的MCU去和模块进行AT命令交互;
   * 访问地址: http://www.telit.com/en/products/python.php
   * 精巧地址: http://bit.ly/4uJsAU
Line 364: Line 375:
== Py 图形应用 ==

 常备::
== Py 多媒体支持 ==
图形桌面是人们最经常接触的界面,多媒体应用更加是人们最喜爱的应用,这方面Python 也有不凡的支持:
 常备::
  普通的图形支持:
Line 370: Line 382:
   * 提供强大的图形处理的能力,并提供广泛的图像文件格式支持,该库能进行图像格式的转换,打印和显示.还提供了一些基本图像处理接口.
  * Graphviz ,,,
CIL
  
   * 提供强大的图片处理的能力,并提供广泛的图像文件格式支持,该库能进行图像格式的转换,打印和显示.还提供了一些基本图像处理接口.
  * PythonMagick
   * 访问地址: http://www.imagemagick.org/download/python/
   * 精巧地址: http://bit.ly/PHicT
   * 支持Python 自然的使用 ImageMagick® 提供的强大功能, 可以创建/编辑/转换近100种图片格式文档!以及增加图形特效;
  * Urwid
   * 访问地址: http://excess.org/urwid/
   * 精巧地址: http://bit.ly/3oztKf
   * CLI ~ 命令行界面构建支持模块,可以快速创建在命令行窗口中基于字符的图形应用;
  * 各类图表支持:
   1. ChartDirector for Python
    * 访问地址: http://www.advsofteng.com/cdpython.html
    * 精巧地址: http://bit.ly/3JrKi1
    * 图表导演 ~ 是个商业软件,但是自由许可版本,没有限制任何功能,仅仅是在底部追加了一小条公司名称;可以快速根据数据创建各种漂亮的趋势图表;
   1. biggles
    * 访问地址: http://biggles.sourceforge.net/libplot/
    * 精巧地址: http://bit.ly/1DT3jD
    * 调用 GNU plotutils 来生成各种曲线图的Python 接口;
   1. Python Call Graph
    * 访问地址: http://pycallgraph.slowchop.com/
    * 精巧地址: http://bit.ly/2TW8nX
    * 以及 pygraphviz - NetworkX
    * 访问地址: https://networkx.lanl.gov/wiki/pygraphviz
    * 精巧地址: http://bit.ly/4xX6eW
    * 都是来对象化调用Graphviz(http://www.graphviz.org) 绘制树图的接口;
Line 375: Line 409:
  高强度的图形处理/桌面应用:

  * GIMP Python Documentation
   * 访问地址: http://www.gimp.org/docs/python/index.html
   * 精巧地址: http://bit.ly/6DxzY
   * 跨平台照片处理软件GIMP 的Python 接口,这是类似 PhotoShop 的强力照片数字暗室软件,可以借助Python 开发各种特效插件;同时也可以通过接口使用GIMP 提供的各种图片处理能力;
Line 379: Line 419:
  * ...
Line 384: Line 423:

 前沿::
  * 3D,blander
  * TK
  * wxPython~ UliPad
  * Qt
  * 多媒体,,,

== Py 扩展应用 ==
旧有系统的扩展/融合,需要 Python 这样优秀的"胶水语言":

 常备::
  * Swig:
   * 访问地址: http://www.swig.org/doc.html
   * 精巧地址: http://bit.ly/4qUhgr
   * python和其他语言的"黏合剂".
  * ctype
  * 桌面软件开发框架:
   1. TkInter
    * 访问地址: http://wiki.python.org/moin/TkInter
    * 精巧地址: http://bit.ly/4qdc6u
    * 是Python 内置的GUI接口,支持Tk库的图形开发,而且Tk 是古老的Tcl脚本语言的GUI支持库,因其精巧快速,几乎所有操作系统都有兼容版本;
   1. WxPython
    * 访问地址: http://wiki.python.org/moin/WxPython
    * 精巧地址: http://bit.ly/m8UVp
    * 是跨平台GUI框架WxWidgets的Python 接口;发展稳定,甚至于有开门的IDE!
    * Limodou 的作品UliPad:
     * 访问地址: http://code.google.com/p/ulipad/
     * 精巧地址: http://bit.ly/3EHHJV
    * 就是使用 wxPython 开发的跨平台编辑器!
   1. PyQt
    * 访问地址: http://wiki.python.org/moin/PyQt
    * 精巧地址: http://bit.ly/3OKUnu
    * 是商业化GUI框架 Qt 的Python 接口,可以完成非常美观的跨平台软件;QT就是实现了KDE环境的那个库,由一系列的模块组成,有qt, qtcanvas, qtgl,qtnetwork, qtsql, qttable, qtui and qtxml,包含有300个类和超过5750个的函数和方法. PyQt还支持一个叫qtext的模块,它包含一个QScintilla库. 该库是Scintillar编辑器类的Qt接口.
   1. Python for Delphi
    * 访问地址: http://www.atug.com/andypatterns/pythonDelphiTalk.htm
    * 精巧地址: http://bit.ly/2UWUiD
    * 是古老好用的GUI框架Delphi 的Python 接口,如果对Delphi非常熟悉的开发人员一定喜欢;-)
   1. PyGUI
    * 访问地址: http://www.cosc.canterbury.ac.nz/greg.ewing/python_gui/
    * 精巧地址: http://bit.ly/3CCNMI
    * 全新开发的跨平台GUI框架,目标是一个完善的独立的GUI框架;
   * 有关这部分的综合介绍,推荐 沈崴的"Python 史书·GUI 部"
    * 访问地址: http://wiki.woodpecker.org.cn/moin/PyHiStory/PyGuiHistoric
    * 精巧地址: http://bit.ly/3R8nHK
   * 以上都是跨平台GUI框架,实际上还有丰富的操作系统依赖的GUI框架,就不在此一一列举了;
 前沿::
  3D,游戏,多媒体开发:
  * blender.org - Python
   * 访问地址: http://www.blender.org/education-help/python/
   * 精巧地址: http://bit.ly/4iv8nf
   * Blender 是个全功能3D艺术创作平台,可以支持从3D建模/动画/渲染的全套3D电影制作!而Python 贯穿其中各个方面!
   * 实际上各种主流3D设计系统:3DS MAX,MaYa,LightWave, Panda3D, Nendo, Radiosity, Raw Triangle,
...都有Python 的扩展系统,以便设计师经过少量的学习后就可以利用脚本快速扩展出需要的特效插件来!

  * Inkscape PythonModules
   * 访问地址: http://wiki.inkscape.org/wiki/index.php/PythonModules
   * 精巧地址: http://bit.ly/1IGBQr
   * Inkscape 是GNU/Linux平台中类似 Illustration/CoreGraw/FreeHand 的平面矢量设计软件,也提供了全面的Python 接口,可以扩展插件,组织自动绘制脚本,利用Inkscape 对.svg 矢量图形进行处理;
  * pySonic
   * 访问地址: http://pysonic.sourceforge.net/
   * 精巧地址: http://bit.ly/4eL7h2
   * 音乐处理支持模块;
  * TextAloud
   * 访问地址: http://www.nextup.com/TextAloud/
   * 精巧地址: http://bit.ly/t24VE
   * Python 的TTS(Text To Speech)文本朗读支持模块,当然的只有E文等拼音文字的支持;
  * PyMedia - Python module for avi, mp3, dvd, wma, ogg processing
   * 访问地址: http://pymedia.org/
   * Python 多媒体处理模块,支持音频/视频的处理
  * pygame - python game development
   * 访问地址: http://www.pygame.org/news.html
   * 精巧地址: http://bit.ly/3DDJPm
   * 是基于SDL 的游戏开发综合支持模块;可以快速开发跨平台的多媒体游戏!
   * SDL ~ Simple DirectMedia Layer 库;是为数不多的商业游戏开发公司使用的免费软件库之一. 它提供跨平台的二维帧缓冲区图形和音频服务,它支持 Linux/Win32 和 BeOS. 也不同程度地支持其它平台,包括 Solaris/IRIX/FreeBSD 和 MacOS. 除了大量的服务,包括线程/独立于字节存储次序的宏和 CD 音频,SDL 还提供了一个简单的 API,它允许您尽可能接近本机硬件. 使用 SDL 有三重优点:稳定/简单和灵活.


== Py 应用扩展 ==
原有系统的扩展/融合,使用 Python 这般优秀的"胶水语言"来粘合新系统非常的轻松:

 常备::
  * C/C++ 到Python,一般有两种基本模式:
   * `扩展`:最终用户运行Python解译器程序,并导入用C++编写的Python"扩展模块". 想像一个C++写的库,给它一个Python接口, 这样Python程序员就可以使用它. 从Python来看,这些模块就像是常规的Python模块;
   * `内嵌`:最终用户运行C++写的程序,反过来调用Python解译器,就像调用一个库函数. 想像一下为现有的应用程序加入脚本能力;
    
   1. Swig:
    * 访问地址: http://www.swig.org
    * 是一个自动的扩展构造工具. 它读入注释的C/C++头文件,为python/tcl/perl等多种脚本语言产生wrap代码. SWIG可以包装大量C++特性到Python的扩展模块中.
   1. SIP, a Python/C++ Bindings Generator
    * 访问地址: http://www.controlvideo.de/sip/
    * 精巧地址: http://bit.ly/Nb0RR
    * 由Phil Thompson创建,是一个C++模块构造器,专门为C++的类创造wrapper. 它曾经被用于创建PyQt和PyKDE扩展模块,因此比较出名. 支持C++特征很齐全,但比较复杂
   1. Boost Python Library
    * 访问地址: http://www.boost.org
    * 由David Abrahams创建. 该库提供了更多与众不同的C++ wrap到python扩展中,而只需要对要扩展的C++类写很少的附加信息. Boost为C++提供了许多实用的库,如Regex(正则表达式库)/Graph(图组件和算法)/concept check(检查泛型编程中的concept)/Thread(可移植的C++多线程库)/Python(把C++类和函数映射到Python之中)/ Pool(内存池管理)等等. Boost总体来说是实用价值很高,质量很高的库. 并且强调对跨平台的支持. 但是Boost中也有很多是实验性质的东西,在实际的开发中实用需要谨慎.

  * Python 到 C:ctypes
Line 403: Line 505:
   * 用来调用dll/shared libraries(动态链接库/共享库).
  
   * ctypes是一个Python模块,使用他可以在Python中创建和操作C语言的数据类型,这样可以在动态链接库中传递参数到C的函数中去;ctypes可以在windows/linux等多个平台上使用,甚至支持Windows上的COM开发
  * Python 到 Fortran:pyfort
   * 访问地址:http://pyfortran.sourceforge.net
   * 用来产生Fortran语言生成的扩展模块
  * Python 到 Perl:PyPerl
   * 访问地址: http://wiki.python.org/moin/PyPerl
   * 精巧地址: http://bit.ly/3vR3ET
   * 支持将Perl 应用嵌入到Python 中!
Line 409: Line 517:
   *
  * PythonExtendingAndEmbedding:
   * 访问地址: http://wiki.woodpecker.org.cn/moin/PythonExtendingAndEmbedding
   * 精巧地址: http://bit.ly/26MjGC
   *
  * Psyco:
   * 访问地址: http://psyco.sourceforge.net/
   * 精巧地址: http://bit.ly/3jrshT
   * 一个Python代码加速度器,可使Python代码的执行速度提高到与编译语言一样的水平.
  * ...
   * 用Python样的脚本写程序,然后自动转换成C代码,编译成纯C程序的方式来扩展应用!
  * The Jython Project
   * 访问地址: http://www.jython.org
   * JAVA平台上实现的Python,支持用户使用Python 的语法编写脚本,来调用一切JAVA的库;
  * IronPython
   * 访问地址: http://www.codeplex.com/IronPython
   * 精巧地址: http://bit.ly/8bXUo
   * 在.net 平台上实现的Python,支持用户使用Python 的语法编写脚本,来调用一切.NET的库;
  * BOO
   * 访问地址: http://boo.codehaus.org
   * 精巧地址: http://bit.ly/1FA6rS
   * 和IronPython 类似,是个有着Python语法的.net 语言,不同之处是可以象脚本语言一样直接运行在命令行下面;一样可以轻松和.net其他语言互相协作无间!
Line 421: Line 531:
  * 动态 Jython

  * 原来Boo是一种有着python语法的.net语言,好处是公用CLI和.net其他语言互相协
作无间。。

我同事那个小组用了很久了,他老大用c#。他们在mono上跑,看来现在mono也相当
的成熟了,他们的都是生产上的应用。

Boo的logo挺讨人喜欢 :)
http://boo.codehaus.org/Language+Features

不知道在vs.net上面开发boo会不会很爽。
  
  * 用SSE2
   * 访问地址: http://wiki.woodpecker.org.cn/moin/PyWorkWithEES2
   * 精巧地址: http://bit.ly/2jZbSm
   * 支持使用SSE指令集的外部库,用以进行高性能计算,在极限条件下(不作分支判断,只在一个循环中做加减乘除计算)与纯Python计算相比可以提升2000倍.
  * 和Flash
   * 访问地址: http://wiki.woodpecker.org.cn/moin/UsageFlashInPyProj
   * 精巧地址: http://bit.ly/E1oCT
   * 支持建立Python调用Flash的本地应用(不同于Adobe的Apollo);没有用到浏览器嵌入flash网页的方法,直接在pythonwin或者wxpython建立的窗口中插入Flash ocx!

Line 436: Line 543:

常备::
  * Numarray/NumPy:
   * 访问地址: http://numpy.scipy.org/numpybook.pdf
 常备::   *NumPy/SciPy/Matplotlib/ipython/openbabel:
  * Numeric/Numarray/NumPy
   * 访问地址: http://numpy.scipy.org/
Line 441: Line 547:
   * Numarray是Python的一个扩展库,主要用于处理任意维数的固定类型数组,简单说是一个矩阵库,它的底层代码是用C编写的,NumPy是Numarray的后继者,用来代替NumArray.
  * SciPy:
   * Numarray是Python的一个扩展库,主要用于处理任意维数的固定类型数组,简单说是一个矩阵库,它的底层代码是用C编写的
   * Numeric/Numarray/NumPy/SciPy之间关系参见网站: http://www.scipy.org/History_of_SciPy。或者参看这个blog的中文翻译: Scipy和Numpy的前世今生 http://my.opera.com/zhangyunfeng/blog/show.dml/256938

  *ipython
  * 访问地址: http://ipython.scipy.org/moin/
  * ipython提供一个像octave,matlab那样的交互式的shell,比默认python shell更好用, 又可以像系统Shell一样运行console命令

  * SciPy:
Line 445: Line 557:
   * 它和NumPy一起工作, 提供了许多方便和高效的数值计算函式,如数值积分或优化。
  * ...
   * 它和NumPy一起工作, 提供了许多方便和高效的数值计算函式,如数值积分或优化

   *matplotlib
   * 访问地址: http://matplotlib.sourceforge.net/
   * matplotlib是一个python 2D图形库,可以从数据生成印刷质量的输出。
Line 448: Line 563:
 深入::
  * 数学
  * SAGE:
   *pylab
   *访问地址: http://www.scipy.org/PyLab
   *被设计用来取代NumPy, SciPy, Matplotlib, IPython组合的科学计算环境,目前还没有完成

   *openbabel
   * 访问地址: http://openbabel.org/wiki/Python
   * openbabel是转换分子建模和计算化学中各种数据格式的模块


 深入:: * SAGE:
Line 453: Line 575:
Software for Algebra and Geometry Experimentation (SAGE) 是使用 Python 语言编写的,并使用交互式的 Python Shell 作为其用户界面。SAGE 的独特之处在于,它能够用作其他各种计算机代数系统的集成器,从而允许用户利用不同软件包的各自强项。
  * ...
 前沿::
  * 生物
Download - BioPython
http://biopython.org/wiki/Download
http://bit.ly/Ipaud
== Py 工程应用 ==
Python 对于非IT行业,一样有成功的支持:

 常备::
  * 模块
   * Software for Algebra and Geometry Experimentation ~ 代数与几何实验室! 是使用 Python 语言编写的数学方面专用模块,并使用交互式的 Python Shell 作为其用户界面. SAGE 的独特之处在于,它能够用作其他各种计算机代数系统的集成器,从而允许用户利用不同软件包的各自强项.

  * BioPython
   * 访问地址: http://biopython.org/wiki/Download
   * 精巧地址: http://bit.ly/Ipaud
   * 生物学Python,支持各种遗传学的DNA数据分析等等;
python加速:: Psyco/Pyrex
  * Psyco:
  * 访问地址: http://psyco.sourceforge.net/
  * 精巧地址: http://bit.ly/3jrshT
  * 一个Python代码加速度器, 可使Python代码的执行速度提高数倍

  *pyrex: 将核心算法代码转化为C,获取较快的计算速度
   
== Py 行业应用 ==
Python 在各种行业,一直有经典的支持:

 常备::
  * Bazaar Version Control
   * 访问地址: http://bazaar-vcs.org/
   * 缩写为 Bzr 的一种分布式版本管理系统,是Launchpad(https://launchpad.net/) 这一强大开源软件项目管理平台的基础系统,该平台上组织了包含Ubuntu 等等大型优秀软件工程! 使用Python 实际!
  * Mercurial
   * 访问地址: http://www.selenic.com/mercurial/wiki/index.cgi
   * 精巧地址: http://bit.ly/BHEAo
   * 缩写为 Hg 的另一种优秀分布式版本管理系统,是Mozilla 等等大型开源软件工程使用的成熟系统!
   * 有关分布式版本管理的综合对比,参考:DistributedScm - 分布式配置管理
    * 访问地址: http://wiki.woodpecker.org.cn/moin/DistributedScm
    * 精巧地址: http://bit.ly/3myGFW
Line 466: Line 604:
  * 产品
 前沿::
  * ??
  * Zenoss
   * 访问地址: http://www.zenoss.com/
   * 被sourceforge评为2007年3月的明星项目!是基于Zope(纯Python平台)实现的企业级IT管理软件!
   * 是智能监控软件,他允许IT管理员依靠单一的WEB控制台来监控网络架构的状态和健康度.可以发现和管理公司IT环境的各类资产(包括服务器、网络、和其他结构设备). Zenoss可以创建关键资产清单和对应的组件级别(接口、服务、进程,已安装的软件等). 建立好模型后,就可以监控与报告IT架构中各种资源的状态和性能容限了. Zenoss同时提供与CMDB关联的事件和错误管理系统,以协助提高各类事件和提醒的管理效率. 以此提高IT管理人员的效率!
  * scons
   * 访问地址: http://www.scons.org/
   * Java有Ant这个巨火的构建工具,而在Python就是scons了!
   * 简单点说,就是一个替代“autotools + make”的编译工具;用Python语言写的 -- 配置文件也是python,能够在多平台上工作;支持并行编译、ccache等技术,能有效提供编译速度;
   
 前沿::
  * Tribon Solutions ~ Python Success Stories
   * 访问地址: http://www.python.org/about/success/tribon/
   * 精巧地址: http://bit.ly/1vVEDy
   * 船舶制造CAD系统,支持专业的船舶建造图纸辅助设计!而Python 是这个系统中重要的插件开发语言,有丰富的模块库;
  * Ice for Python
   * 访问地址: http://www.zeroc.com/icepy.html
   * 精巧地址: http://bit.ly/18rWrB
   * ZeroC发布的面向网格计算的Ice(Internet Communications Engine),支持复制/负载均衡及应用程序的分发,并提供了一个网格应用程序维护管理工具;同样有 Python 的支持,可以快速完成类似 `SETI@home` 的分布式计算应用!
   
Line 474: Line 627:
  教学支持:
  * 中蟒
  程序开发中文教学支持:
  * 中蟒(中文 Python)编程语言
   * 访问地址: http://www.chinesepython.org/cgi_bin/cgb.cgi/home.html
   * 精巧地址: http://bit.ly/1cVBcm
   * 是基于Python 2.1.3 的代码,从内部增补中文关键字特性的脚本语言,支持用户使用中文来编写可执行代码;由于涉及源代码修订,所以,跟进Python 的发布,比较慢;
Line 477: Line 633:
   * 访问地址: http://code.google.com/p/zhpy/
   * 精巧地址: http://bit.ly/q0wVN
   * 是Python 语言的"替身"(借用一部日本漫画中的专用名词来定义);又名`zhpy`,是一个轻量的,与 Python 语言互相兼容的中文 Python 语言; 让使用者可以使用纯中文语句 (繁体或简体) 来编写程式; 周蟒中文编程语言的目标是协助使用者透过中文编程语言学习编程语言,进而接触世界上大部份的编程语言,而不是脱离现实世界;
   * 周蠎,其实就是一个纯Python 应用,相当于用Python 实现了一个可以自动翻译中文脚本为E文脚本的编译器,从而可以包裹在Python 语言之外,安全自然的支持中文编程,令广大没有学习过E文的人们,也可以享受Python 的简洁明快;
Line 479: Line 640:
  * 维基
 前沿::
  教育体制支持:
  * attachment:Pippy-icon.png Pippy ~ OLPC 计划使用的窗口系统 Sugar 的开发脚本
  * 教程地址: http://wiki.laptop.org/go/Pippy
  * 精巧地址: http://bit.ly/UjyDx
  * MoinMoin
   * 访问地址: http://moinmo.in
   * 是纯Python 实现的全功能维基引擎,不使用DB,从而有极高的可维护和扩展性;是世界主流维基系统之一,很多大型社区的知识管理都使用 MoinMoin 架设;
   * 进一步介绍,推荐:"维基入门及 MoinMoin 基本使用"
    * 访问地址: http://www.zoomquiet.org/share/s5/DriveIntoMoin/061031-DIMoin/
    * 精巧地址: http://bit.ly/48jLdA

 前沿::
  教育格局探索:
  * OLPC http://laptop.org/
   * One Laptop Per Child ~ 每个儿童一台笔记本电脑 计划是
   * 由MIT 发起的项目,旨在生产和发售低成本笔记本电脑给发展中国家的儿童,以便激发教育改革;为儿童们"学习获取知识"而特意设计的`XO`笔记本电脑,使用的桌面环境是 Sugar (简化版本的GNU/Linux);
   * attachment:Pippy-icon.png Pippy
   * 教程地址: http://wiki.laptop.org/go/Pippy
   * 精巧地址: http://bit.ly/UjyDx
   * 基于Sugar 桌面应用软件的主力开发语言就是Python,而 Pippy 就是Sugar 的应用接口仓库;
Line 507: Line 678:
`无法分类,或不是完备的资源指引`
Line 527: Line 699:
  * Psyco:
   * 访问地址: http://psyco.sourceforge.net/
   * 精巧地址: http://bit.ly/3jrshT
   * 一个Python代码加速度器,可使Python代码的执行速度提高到与编译语言一样的水平.

TableOfContents

status

草稿

ZoomQuiet,Liz

完成度:99%

Python 资源索引

经过十数年的发展积累,Python 应用的触角早已深入了各个领域! 在网络中的资源也浩如烟海:

  • 图atta2-1 使用Google 搜索Python 时的反馈

attachment:2008-10-14-google-python.png

在此行者们也只能根据自己的实际开发体验,推荐一些常见领域的优秀资源给好奇的读者们;-)

以下,使用粗略的领域分类,来展示不同层次相关应用的Python 技术:

Py 语言自身

就Python 语言本身的学习参考资源

常备
深入
前沿
  • Python 是个高速发展的语言,本身在进行什么样的发展?未来将会如何?都是应该深入关注的:
  • Python Enhancement Proposals
    • 访问地址: http://www.python.org/dev/peps/

    • 精巧地址: http://bit.ly/fwcW8

    • Python 增进提案库 ~ 缩写 PEPs ; 是Python 最前沿和最官方的特性讨论中心,关心Python 未来趋势,以及现有技术细核的读者,应该认真学习;
  • Python 3000 进度报告
  • Stackless.com
    • 访问地址: http://www.stackless.com/

    • 这是针对传统 CPython 对于线程保守态度的一个积极应对;通过对C语言实现的Python 进行小的改进,获得了:
      • 简化的线程开发
      • 微线程扩展支持
      • 并发建模工具
    • 而且和 CPython 是完全二进制兼容的,可以使用所有传统Python 的模块
    • 而且已经在一些企业级情景中得到了应用,经典的有:
      1. EVE Online ~ 大型多人在线实时战略游戏 http://www.eve-online.com/

      2. Sylphis3D ~ 3D游戏引擎 http://devnet.sylphis3d.com/

  • PyPy

Py 文本处理

文可文,非常文. 本可文,非常本. 文本,数据之始;字符,万思之母...~对文本的处理是最基础和最常见的任务,这方面Python 有大量的愉快体验:

常备
深入
  • 有关文本处理的专门话题:
  • Text Processing in Python:
  • 结构化文本支持:
前沿

Py 数据库应用

只要是个产品化系统,多少都得和数据库打交道,Python 一直有全面支持:

常备
深入
前沿

Py 网络应用

进入互联网时代,和网络资源互动是基础要求,这方面 Python 有各种方面的支持:

常备
深入
前沿

Py 嵌入系统

上网已经不在是电脑的专利,越来越多的设备/设施在联入网络,提供数据和接受控制,Python 在这方面也非常适合:

常备
前沿
  • 对于更加广泛的有嵌入式GNU/Linux系统的设备,Python 同样可以进驻!
  • 沈崴路由器建站教程 - 沈崴 - 网易博客
  • Telit 是一家专业设计和生产无线模块产品的公司,值得注意的是,它几乎在所有的最新产品中集成了嵌入式Python解释器,这样使用者就可以使用Python脚本快速地开发应用,这些Python脚本可以保存在模块内部运行,而不用另外的MCU去和模块进行AT命令交互;

Py 多媒体支持

图形桌面是人们最经常接触的界面,多媒体应用更加是人们最喜爱的应用,这方面Python 也有不凡的支持:

常备
深入
前沿

...都有Python 的扩展系统,以便设计师经过少量的学习后就可以利用脚本快速扩展出需要的特效插件来!

  • Inkscape PythonModules

  • pySonic
  • TextAloud

  • PyMedia - Python module for avi, mp3, dvd, wma, ogg processing

  • pygame - python game development
    • 访问地址: http://www.pygame.org/news.html

    • 精巧地址: http://bit.ly/3DDJPm

    • 是基于SDL 的游戏开发综合支持模块;可以快速开发跨平台的多媒体游戏!
    • SDL ~ Simple DirectMedia Layer 库;是为数不多的商业游戏开发公司使用的免费软件库之一. 它提供跨平台的二维帧缓冲区图形和音频服务,它支持 Linux/Win32 和 BeOS. 也不同程度地支持其它平台,包括 Solaris/IRIX/FreeBSD 和 MacOS. 除了大量的服务,包括线程/独立于字节存储次序的宏和 CD 音频,SDL 还提供了一个简单的 API,它允许您尽可能接近本机硬件. 使用 SDL 有三重优点:稳定/简单和灵活.

Py 应用扩展

原有系统的扩展/融合,使用 Python 这般优秀的"胶水语言"来粘合新系统非常的轻松:

常备
  • C/C++ 到Python,一般有两种基本模式:
    • 扩展:最终用户运行Python解译器程序,并导入用C++编写的Python"扩展模块". 想像一个C++写的库,给它一个Python接口, 这样Python程序员就可以使用它. 从Python来看,这些模块就像是常规的Python模块;

    • 内嵌:最终用户运行C++写的程序,反过来调用Python解译器,就像调用一个库函数. 想像一下为现有的应用程序加入脚本能力;

    • Swig:
      • 访问地址: http://www.swig.org

      • 是一个自动的扩展构造工具. 它读入注释的C/C++头文件,为python/tcl/perl等多种脚本语言产生wrap代码. SWIG可以包装大量C++特性到Python的扩展模块中.
    • SIP, a Python/C++ Bindings Generator
      • 访问地址: http://www.controlvideo.de/sip/

      • 精巧地址: http://bit.ly/Nb0RR

      • 由Phil Thompson创建,是一个C++模块构造器,专门为C++的类创造wrapper. 它曾经被用于创建PyQt和PyKDE扩展模块,因此比较出名. 支持C++特征很齐全,但比较复杂

    • Boost Python Library
      • 访问地址: http://www.boost.org

      • 由David Abrahams创建. 该库提供了更多与众不同的C++ wrap到python扩展中,而只需要对要扩展的C++类写很少的附加信息. Boost为C++提供了许多实用的库,如Regex(正则表达式库)/Graph(图组件和算法)/concept check(检查泛型编程中的concept)/Thread(可移植的C++多线程库)/Python(把C++类和函数映射到Python之中)/ Pool(内存池管理)等等. Boost总体来说是实用价值很高,质量很高的库. 并且强调对跨平台的支持. 但是Boost中也有很多是实验性质的东西,在实际的开发中实用需要谨慎.
  • Python 到 C:ctypes
    • 访问地址: http://python.net/crew/theller/ctypes/

    • 精巧地址: http://bit.ly/3yjAHy

    • ctypes是一个Python模块,使用他可以在Python中创建和操作C语言的数据类型,这样可以在动态链接库中传递参数到C的函数中去;ctypes可以在windows/linux等多个平台上使用,甚至支持Windows上的COM开发
  • Python 到 Fortran:pyfort

  • Python 到 Perl:PyPerl

深入
前沿

Py 科学计算

支持科研方面,Python 也从来没有落后:

常备
*NumPy/SciPy/Matplotlib/ipython/openbabel:
深入
* SAGE:
  • 访问地址: http://sagemath.org/

  • 精巧地址: http://bit.ly/3SNn9Z

  • Software for Algebra and Geometry Experimentation ~ 代数与几何实验室! 是使用 Python 语言编写的数学方面专用模块,并使用交互式的 Python Shell 作为其用户界面. SAGE 的独特之处在于,它能够用作其他各种计算机代数系统的集成器,从而允许用户利用不同软件包的各自强项.

python加速:: Psyco/Pyrex

Py 行业应用

Python 在各种行业,一直有经典的支持:

常备
深入
  • Zenoss
    • 访问地址: http://www.zenoss.com/

    • 被sourceforge评为2007年3月的明星项目!是基于Zope(纯Python平台)实现的企业级IT管理软件!
    • 是智能监控软件,他允许IT管理员依靠单一的WEB控制台来监控网络架构的状态和健康度.可以发现和管理公司IT环境的各类资产(包括服务器、网络、和其他结构设备). Zenoss可以创建关键资产清单和对应的组件级别(接口、服务、进程,已安装的软件等). 建立好模型后,就可以监控与报告IT架构中各种资源的状态和性能容限了. Zenoss同时提供与CMDB关联的事件和错误管理系统,以协助提高各类事件和提醒的管理效率. 以此提高IT管理人员的效率!
  • scons
    • 访问地址: http://www.scons.org/

    • Java有Ant这个巨火的构建工具,而在Python就是scons了!
    • 简单点说,就是一个替代“autotools + make”的编译工具;用Python语言写的 -- 配置文件也是python,能够在多平台上工作;支持并行编译、ccache等技术,能有效提供编译速度;
前沿
  • Tribon Solutions ~ Python Success Stories
  • Ice for Python
    • 访问地址: http://www.zeroc.com/icepy.html

    • 精巧地址: http://bit.ly/18rWrB

    • ZeroC发布的面向网格计算的Ice(Internet Communications Engine),支持复制/负载均衡及应用程序的分发,并提供了一个网格应用程序维护管理工具;同样有 Python 的支持,可以快速完成类似 SETI@home 的分布式计算应用!

Py 教育支持

十年树木,百年树人. 国之大计,教育为本! Python 以其好学易用的特性,在教育的各个方面有出色的支持:

常备
  • 程序开发中文教学支持:
  • 中蟒(中文 Python)编程语言
  • 周蟒
    • 访问地址: http://code.google.com/p/zhpy/

    • 精巧地址: http://bit.ly/q0wVN

    • 是Python 语言的"替身"(借用一部日本漫画中的专用名词来定义);又名zhpy,是一个轻量的,与 Python 语言互相兼容的中文 Python 语言; 让使用者可以使用纯中文语句 (繁体或简体) 来编写程式; 周蟒中文编程语言的目标是协助使用者透过中文编程语言学习编程语言,进而接触世界上大部份的编程语言,而不是脱离现实世界;

    • 周蠎,其实就是一个纯Python 应用,相当于用Python 实现了一个可以自动翻译中文脚本为E文脚本的编译器,从而可以包裹在Python 语言之外,安全自然的支持中文编程,令广大没有学习过E文的人们,也可以享受Python 的简洁明快;
深入
前沿
  • 教育格局探索:
  • OLPC http://laptop.org/

    • One Laptop Per Child ~ 每个儿童一台笔记本电脑 计划是
    • 由MIT 发起的项目,旨在生产和发售低成本笔记本电脑给发展中国家的儿童,以便激发教育改革;为儿童们"学习获取知识"而特意设计的XO笔记本电脑,使用的桌面环境是 Sugar (简化版本的GNU/Linux);

    • attachment:Pippy-icon.png Pippy
    • 教程地址: http://wiki.laptop.org/go/Pippy

    • 精巧地址: http://bit.ly/UjyDx

    • 基于Sugar 桌面应用软件的主力开发语言就是Python,而 Pippy 就是Sugar 的应用接口仓库;

Py 集锦资源

有些资料是索引的索引,指向大量网站和索引,帮助大家快速了解Python 的丰厚,特此推荐:

  1. Python 快速介绍Limodou和Zoom.Quiet 合写

  2. 有关Python 的成功故事 官方网站收集组织

  3. The Vaults of Parnassus: Python Resources
  4. Python Starship

资源回收

无法分类,或不是完备的资源指引


反馈

创建 by -- ZoomQuiet [DateTime(2008-06-17T14:23:01Z)]

PageComment2

[:/PageCommentData:PageCommentData]

ObpLovelyPython/LpyAttach2ResIdx (last edited 2009-12-25 07:14:51 by localhost)