免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3968 | 回复: 0
打印 上一主题 下一主题

Python学习资源 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-01-03 14:40 |只看该作者 |倒序浏览

基本内容
Python基本安装:

Python文档:

常用插件:


  • http://www.pfdubois.com/numpy/
    Python的数学运算库,有时候一些别的库也会调用里面的一些功能,比如数组什么的;

  • http://www.pythonware.com/products/pil/
    Python下著名的图像处理库Pil;

  • http://simpy.sourceforge.net/
    利用Python进行仿真、模拟的解决方案;
  • Matplotlib 据说是一个用来绘制二维图形的Python模块,它克隆了许多Matlab中的函数, 用以帮助Python用户轻松获得高质量(达到出版水平)的二维图形;

  • http://www.amk.ca/python/code/crypto
    python的加解密扩展模块;

  • http://cjkpython.i18n.org/
    提供与python有关的CJK语言支持功能:转码、显示之类。
  • Psyco、Pyrex:两个用于提高Python代码运行效率的解决方案;

  • Pyflakes

    PyChecker

    PyLint
    :都是用来做Python代码语法检查的工具。

  • http://wxpython.sourceforge.net/
    基于wxWindows的易用且强大的图形界面开发包wxPython;

  • http://avc.inrim.it/html/
    比MVC模式更方便易用的开发框架,主要是帮助透明地完成界面控件与后台数据之间的内容绑定。该框架支持GTK、QT、TK、wxWidgets等主要具有Python封装的GUI开发框架。

  • http://www.pygame.org/
    用Python帮助开发游戏的库,也可以用这个来播放视频或者音频什么的,大概依靠的是SDL;

  • http://starship.python.net/crew/theller/py2exe/
    win下将Python程序编译为可执行程序的工具,是一个让程序脱离Python运行环境的办法,也可以生成Windows服务或者COM组件。其他能完成Python脚本到可执行文件这个工作的还有Gordon McMillan's Installer、Linux专用的freeze以及py2app、setuptools等。不过此类工具难免与一些模块有一些兼容性的问题,需要现用现测一下。
  • 嵌入式数据库:
    BerkeleyDB的Python版
    ,当然还有其他的好多。

  • PEAK
    提供一些用于实现自动化集群测试的重要基础类库,比如超轻量线程框架、分布式代码执行等。


    • greenlet
      是PEAK给出的一种进程内的线程模型实现,自称是
      Stackless
      项目的副产品。其实这是一种伪线程,也就是说greenlet间切换需要明确指定下一步切换到哪块指令继续执行,而没有被执行的代码就被暂时挂起了。这里面greenlet间的执行顺序是完全确定的,并且是非并发的,就不能解决长时间大量资源占用的操作会导致程序无响应的问题。但greenlet可以用来减少资源死锁、互斥造成的资源消耗(代码被阻塞时,可以切换先去执行其他未被阻塞的部分),因此用来响应按钮点击等是挺好用的。


  • PycURL
    传说这是实现Python下多线程网页抓取的效率最高的解决方案,本质是对libcurl C语言库的封装。其实
    Twisted
    也可以定制成为一个网页抓取工具的。

  • Protocol Buffers
    Google提供的高效数据序列化解决方案,比基于XML的数据序列化方案在数据大小和编解码效率上都大约高一个数量级。当然,Google自己也说这种办法也不是用哪都合适,一来Protocol Buffers不大适合用来处理格式化的文本,另一方面其本质是一个传输协议的生成语言,可能在传输的内容相对固定时,才值得专门生成一套这样的解析器。

  • pyinotify
    利用操作系统自身提供的Notify机制以最高的效率监控文件变化。

  • chardet
    一个猜测网页编码(比如utf-8还是gb18030)的库,会根据HTTP参数、HTML标签、XML标签中的相关声明来进行猜测。另有一个非Python实现的
    Enca
    也可以提供类似的功能。

部分常用工具:


  • http://www.scons.org/
    Java有Ant这个巨火的构建工具,Python的特性允许我们构建更新类型的构建工具,就是scons了。

  • Python Sidebar for Mozilla
    FireFox的一个插件,提供一个用来查看Python文档、函数库的侧边栏。

  • IPython
    很好用的Python Shell。wxPython发行版还自带了PyCrust、PyShell、PyAlaCarte和PyAlaMode等几个工具,分别是图形界面Shell和代码编辑器等,分别具有不同特点可以根据自己的需要选用。

  • Easy Install
    快速安装Python模块的易用性解决方案(使用这种方式发行的包通常以
    Python Eggs
    的格式被Easy Install自动处理)。有人推荐先用 virtualenv 建个虚拟python环境再使用 easy_install (之后就不用加 --prefix参数了)。

推荐资源:

代码示例:


  • http://newedit.tigris.org/technical.htm
    Limodou的NewEdit编辑器的技术手册,讨论了一些关于插件接口实现、i18实现、wxPython使用有关的问题,值得参考。
  • 关于插件扩展机制:


    • A Simple Plugin Framework
      讲解了一种非常聪明而简单的办法来为代码提供插件接口。如果参考Java社区的类似框架,则有
      Java Plug-in Framework (JPF)
      以及OSGi标准。
    • 另外limodou先生在Ulipad中实现插件和MixIn的机制也十分简单有效,见
      [NewEdit]设计说明(一)--概述
      ,当然在
      UliPad
      最新版本的代码中对这个机制的实现又有实用的改进。(发布插件则有不少项目采用
      Python Eggs

    • 比较复杂的应用程序则可以使用
      Zope Component Architecture
      这样的机制来实现灵活易用的扩展接口(注意:zca虽然是Zope平台的一个组成部分,但其自身是不需要依赖Zope平台即可使用的)。

其他东西:


  • http://www.forum.nokia.com/main/0,,034-821,00.html
    Nokia居然发布了在Series 60系统上运行Python程序(图形界面用wxPython)的库,还有一个Wiki页是关于这个的:
    http://www.postneo.com/postwiki/moin.cgi/PythonForSeries60

    Python4Symbian
    这个页面是记录的我的使用经验。

  • pyre
    :使用Python完成高性能计算需求的包,真的可以做到么?还没研究。

  • Parallel Python
    :纯Python的并行计算解决方案。
    相关中文参考页面


  • Pexpect
    :用Python作为外壳控制其他命令行程序的工具(比如Linux下标准的ftp、telnet程序什么的),还没有测试可用程度如何。

  • pyjamas
    :Google GWT的Python克隆,还处在早期版本阶段。

  • Durus
    :Python的对象数据库,当然也可以作为一种对象实例持久化的机制来使用;这是一个开源的纯Python实现,并提供一个可选的C语言插件来大幅提高运行效率。


    • Missile DB
      :一种 Python 的、简洁高效的 DBMS,自称是Durus的一种衍生品,更能够适应Stackless Python环境。同时也是并发性能极高的
      Eurasia3
      项目的一个子项目。


  • Scapy
    :似乎是一个能够控制底层网络封包的交互式Python工具,对网络协议分析应该很有用。

有意思的东西:


  • Howie
    :用Python实现的MSN对话机器人。

  • Cankiri
    :用一个Python脚本实现的屏幕录像机。

(Edit Section ↓)
参考资料

(Edit Section ↓)
Python IDE
我的IDE选择经验



  • Pydev
    基于Eclipse的,非常棒的Python环境,改进速度非常快,现在是我最喜欢的IDE。

  • ulipad
    Python+wxPython实现的轻量级全功能跨平台IDE,非常好用。做一些简单小东西的时候我会用这个。

  • Eric Python IDE
    基于QT实现的非常不错的跨平台PYTHON IDE。支持调试,支持自动补全,甚至也支持重构。如果没有ulipad,并且在我的gnome下基于QT的Eric界面别走形的话,我会选这个。

  • http://www.xored.com
    Trustudio 一个基于Eclipse的、同时支持Python和PHP的插件,曾经是我最喜欢的Python IDE环境,功能相当全了,不过试用时感觉有些细节不完善以致不大好用。

  • http://www-900.ibm.com/developerWorks/cn/opensource/os-ecant/index.shtml
    用 Eclipse 和 Ant 进行 Python 开发

  • http://www.scintilla.org/
    同时支持Win和Linux的源代码编辑器,似乎支持Python文件的编辑。

  • http://boa-constructor.sourceforge.net/
    著名的基于WxPython的GUI快速生成用的Python IDE,但是开发进度实在太差了……

  • http://pype.sourceforge.net/
    成熟的Python代码编辑器,号称功能介于EMACS和IDLE之间的编辑器。

  • http://www.stani.be/python/spe
    SPE:号称是一个Full Featured编辑器,集成WxGlade支持GUI设计。

  • eggy
    用Python和QT实现的Python IDE,据说轻量又好用~


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/70334/showart_1770440.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP