`
javayestome
  • 浏览: 1041248 次
  • 性别: Icon_minigender_2
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

我常用的几个第三方 Python 库

阅读更多

我常用的几个第三方 Python

作者:赖勇浩(http://blog.csdn.net/lanphaday

今天公司停电,没上班。跑上来更新个博客,跟大家分享一下我常用的几个第三方 Python 库。Python 语言之所以能够如此流行,除了本身内置许多程序库来保障快速开发之外,目不睱接的第三方库也是一大主因。结合我目前的工作(网游开发),我常用的几个第三方库如下:

wxPython

如果你之前是 windows 程序员,用 MFC 或者 WIN32API 开发界面程序,那进入 Python 国度最好的 GUI 选择应该是 wxPython。它是 wxWidgets Python Bind,与 wxWidgets 的开发完美同步,最为重要的一点是它的消息机制与 MFC 颇为相似,以前在 MFC 的经验完全可以稍作变化就套用在 wxPython 上面。在 WIN32 开发中,最讨厌的一环肯定有 WM_SIZE 消息的处,在主窗口大小变化的时候,保持控件布局在 WIN32 是一件麻烦事。这件事情 wx 解决得非常完美,它的sizer 概念可以让我轻松地在不同窗口尺寸的情况下保持完美的控件布局。另外如果你已经讨厌了 MFC doc-view 模型,wx 也可以给你一个新的选择;如果你非常喜欢 doc-view 模型,放心,在 wx 中仍然可以轻松实现,以前的思想依然可以在这里发挥余热。

wxPython 有两个封装,一个 PythonCard,另一个是 dabo。前者是 wxPython 的有限封装,不支持 wxPython 的全部特性,它的目标是让 wxPython 更加 Pythonic。后者比 PythonCard 要庞大不少,确切来说,它应该是一个三层架构的 C/S 模式的开发框架。如果你想开发基于数据库的应用(如 MISERP 等)用 dabo 是一个不错的选择;另外,如果你之前习惯了 VBVFPDelphi RAD 开发环境,dabo 并不比这些昂贵的工具差多少哦!

py2exe

按照邪恶的 windows 思维,编写的应用如果不编译出一个 .exe 文件恐怕是算不得“软件”的,py2exe 作用正是把你的 .py 脚本变成 .exe 文件,通常它会把脚本打包到一个 .zip 文件中去,但也你可以通过修改 setup.py 脚本把所有的脚本、依赖的 dll 等全部打包到一个 exe 中去,看起来跟 VCVB 编译出来的程序没有什么两样!

如果你的客户需要在 windows 下使用你的应用程序,py2exe 是你不可或缺的工具。我就是用它打包由 wxPython 写的小工具给公司里的游戏策划用的。

psyco

脚本的执行效率多少有点差强人意,虽然优化起来并不是难事,但如果有简单的方法,近乎不用修改源代码,那当然值得去关注一下。psyco 的神奇在于它只需要在代码的入口处调用短短两行代码,性能就能提升 40% 或更多,真可谓是立竿见影!

如果你的客户觉得你的程序有点慢,敬请不要急着去优化代码,psyco 或许能让他立即改变看法。psyco 堪称 Python jit,有许多潜力可以挖掘,如果剩下来给你优化性能的时间已经不多,请马上去阅读它的手册,有许多招儿轻松优化性能。

PIL

PIL Python 的图像处理库,我的看法是强到没得说,简单到没得说。它可以打开数十种图像格式,常见的 jpg/png/bmp 等当然不在话下;此外还提供许多图像处理函数,如图像增强、滤波算法等,详情可以参考我以前的一篇文章《用Python 做图像处理》(http://blog.csdn.net/lanphaday/archive/2007/10/28/1852726.aspx)和《计算图像相似度》(http://blog.csdn.net/lanphaday/archive/2008/04/24/2325027.aspx)。

MySQLdb

这是 Python 对开源数据库 Mysql 的支持,官网在http://sourceforge.net/projects/mysql-python。支持 Mysql 3.23-5.1 全系列版本,Python 版本的要求是 2.3-2.5MySQLdb Python DB API-2.0 的实现,现在已经很成熟了。最新的版本是 <chsdate year="1899" month="12" day="30" islunardate="False" isrocdate="False" w:st="on">1.2.2</chsdate>

如果从事服务器开发,那少不得跟数据库连接池打交道,这时你可以使用 DBUtils jonpy 两个开源程序库。其中 DBUtils 是一套数据库连接池库,而 jonpy 则包括了 CGI 以及数据库连接池等多个功能,请在阅读手册后选择合适的自己库。

pyprocessing

Python 解释器里的 GIL(全局解释器锁)使得 Python 在多核时代有点尴尬——这个支持原生线程的脚本语言竟然不能通过多线程利用多个 CPU 内核同时并发计算。pyprocessing 没有尝试去除 GIL,而是剑走偏锋,尝试从多进程的方式来帮助 Python 走出困境。结果就是使用 pyprocessing 创建进程和进程间通信不仅像使用内置的 threading 模块那么简单,甚至还更加简单。pyprocessing 不仅可以通过本机 socket 和管道进行通信,而且封装得极为完美,它的 Queue 实现用起来跟内置的 Queue 没啥两样,但它是一个进程间共享的队列哦!

pyprocessing py2.6 py3.0 中已经作为内置模块了,也算是开发社区对 pyprocessing 项目的肯定吧。如果你用 Python 开发服务器应用,特别是网络游戏这样的应用,pyprocessing 怎么可以不去关注一下!

分享到:
评论

相关推荐

    flash网络游戏开发几个第三方 Python 库.pdf

    本文将重点介绍几款对于网络游戏开发者来说极为实用且高效的Python第三方库,它们分别是:wxPython、py2exe、psyco、PIL、MySQLdb以及pyprocessing。 #### 1. wxPython **简介**: wxPython是基于wxWidgets的一个...

    cocos第三方依赖库

    在Cocos2d-x中,第三方库的集成通常通过以下几种方式实现: 1. **源码集成**:将第三方库的源代码添加到项目中,然后按照库的构建指南配置和编译。这种方式允许开发者完全控制库的编译过程,可以针对项目需求进行...

    一段python爬虫代码需要自行下载第三方库函数.zip

    下面,我们将详细探讨Python爬虫的基本概念、第三方库的使用以及如何根据需求修改代码。 首先,Python爬虫的构建通常涉及以下几个关键部分: 1. 请求(Request):Python的`requests`库是用于发送HTTP请求的工具,...

    android tensorflow python库

    3. **利用Python服务(如PyDroid3)**:这些第三方应用允许在Android设备上运行Python脚本,然后通过Android应用与其交互。这种方法适用于简单的任务,但不适合实时性能要求高的应用。 4. **将Python代码编译为C++*...

    Python技术常用第三方库功能详解.docx

    以下是几个常见的Python第三方库及其详细功能: 1. **NumPy**:作为Python中的数值计算库,NumPy的核心是`ndarray`对象,它支持高效的多维数组操作。NumPy提供了丰富的数学运算功能,包括矩阵计算、线性代数、傅立...

    Python学习第三方库案例总结.zip

    本篇总结将深入探讨几个常用的Python第三方库及其应用案例,帮助你更好地理解和运用这些库。 1. NumPy(数值计算库) NumPy是Python中用于科学计算的核心库,提供了强大的N维数组对象和相关的工具。它支持大量的...

    如何通过虚拟环境有效管理Python第三方库.pdf

    在软件开发过程中,管理Python第三方库是确保项目顺利运行的重要环节。特别是在多项目环境下,不同的项目可能会依赖不同版本的库,因此就产生了对虚拟环境的需求。虚拟环境,顾名思义,提供了一个隔离的执行环境,...

    python常用模块打包.zip

    1.beautifulsoup4-4.5.1.tar 2.beautifulsoup4-4.5.1.tar 3.chardet-3.0.4-py2.py3-none-any 4.cssselect-1.1.0-py2.py3-none-any 5.idna-2.8-py2.py3-none-any ...等,由于只能写这么多描述,就写这几个以后每天更新

    Python自动化办公的第三方库.zip

    下面我们将深入探讨Python在自动化办公中常用的几个关键库及其应用。 1. **pandas**: pandas是Python数据分析的核心库,它提供了高效的数据结构DataFrame,可以方便地处理和操作表格型数据。在办公自动化中,pandas...

    Python库 | index.py-0.7.10.tar.gz

    Python拥有丰富的第三方库生态系统,如NumPy用于科学计算,Pandas用于数据处理,Django和Flask则用于Web开发。 在`index.py-0.7.10`这个压缩包子文件中,我们通常会找到以下内容: - `setup.py`:这是一个Python...

    《编程小白的第一本Python入门书》

    随着学习的深入,读者将学会如何设计和实现函数,如何使用Python丰富的内置库和第三方库,以及如何处理常见的编程问题。 总之,学习Python并不仅仅是为了学习一种编程语言,更是一个了解计算机科学基本原理、逻辑...

    Python库 | ri_python-0.9.9-cp36-cp36m-win32.whl

    标题中的"Python库 | ri_python-0.9.9-cp36-cp36m-win32.whl"指的是一个特定版本的Python第三方库,名为`ri_python`,其版本号为0.9.9。这个库是针对Python 3.6编译的,并且适用于32位的Windows操作系统。`cp36`代表...

    Python计划. 编程新思维及实战-on 编程实战时常用第三方库实践.zip

    在Python编程领域,掌握常用的第三方库是提升效率和解决问题的关键。本资料包“Python计划. 编程新思维及实战-on 编程实战时常用第三方库实践.zip”着重介绍了编程新思维以及Python实战中不可或缺的第三方库应用。...

    Python库 | checkbox-api-0.1.13.tar.gz

    Python作为一门广泛使用的开发语言,拥有大量的第三方库支持。这些库涵盖了从数据分析、机器学习到网络爬虫等众多领域。对于后端开发而言,Python库如Django和Flask提供了强大的框架来构建Web服务。如果"checkbox-...

    python3.4.4及资源库32位

    资源库32位通常指的是与Python 3.4.4一起使用的第三方库的32位版本,这些库可能包括NumPy、Pandas、Matplotlib、Django、Flask等,它们为Python提供了科学计算、数据分析、Web开发、图形界面等功能。确保安装与...

    Python库 | kyupy-0.0.1-py3-none-any.whl

    在Python的世界里,pip是常用的包管理器,它负责安装和管理Python的第三方库。而wheel文件就是pip可以理解的一种二进制分发格式,它的扩展名是`.whl`。与传统的源代码包(.tar.gz或.zip)相比,wheel文件不需要编译...

    Python库 | python-mango-0.1.5.tar.gz

    总之,"python-mango-0.1.5"是一个Python开发者可能会使用的第三方库,它的存在简化了开发者的任务,提供了特定的功能或者工具。通过了解Python库的结构和使用方法,我们可以更有效地利用这类资源,提升开发效率。

    Python第三方库的几种安装方式

    Python第三方库的安装是Python开发过程中必不可少的环节,因为这些库提供了丰富的功能,极大地扩展了Python语言的能力。这里我们将详细探讨几种常见的安装方法。 首先,`pip`是Python的官方包管理工具,它允许...

    Python库 | cve_bot-0.0.13.tar.gz

    1. **依赖扫描**:cve_bot能分析项目的依赖树,找出所有使用的第三方库及其版本,这是识别潜在漏洞的第一步。 2. **CVE数据库同步**:该库可能会定期与CVE数据库进行同步,获取最新的漏洞信息,确保检测的准确性。 ...

Global site tag (gtag.js) - Google Analytics