python相见恨晚的库


1)基本工具:

virtualenv(虚拟环境)
pip、setuptools (e.g. easy_install,这些东西确定要呢)
ipython(用了之后,就再也不想用普通的python shell)
ipdb(ipython上的debugger,怎么能不用?难道要一直从新运行print某变量?)
ipython notebook(又名jupyter,在线写代码并debug,这东西用了之后就知道本身错过了啥)
 记住%pylab ... 这命令,这样图片之类的直接显示在网页里

fabric(控制多个服务器、方便安装、更改设置、开关某service、等等)
nose、mock、coverage(testing类)

gevent、eventlet(千万别用python自带的多线程库)
 gevent还有从外hijack thread这个debug功能
 别忘了monkey.patch(),哈哈

multiprocessing(必要使用多个处理器、还蛮有必要)
pypy/psyco/cython/ctypes/cffi etc.(理解这些颇有必要,有时候还真的须要跟C兼容或加速)
celery、luigi(同时进行多个process任务,任务之间须要沟通更方便管理)

logging
argparse(上面有人推荐docopt更好)


2)数据处理类:

numpy (千万别低估啊,谁缺乏这个真的什么都干很差)

还有一些在numpy基础上的:

pillow/gd(图片数据类,还有很多图片处理功能)
matplotlib(把各类东西简单显示渲染出来)
pandas(处理复杂数据、转化或合并数据等等。用了之后就不会再import csv之类的)
scipy(统计类,也很多图片处理、优化等功能)
sklearn(机器学习,好方便)
(theano、tensorflow这些也颇有名,只是还没用过,还有个有名的OCR库忘了名字)

nltk、pattern(更多语言处理工具)
pyopencl、pyopengl、pycuda(这些能让numpy作复杂任务更增强更快,利用GPU)


3)网络类:

requests(python内带的http/url等库很烦人)
django、flask、twisted(以及其余web framework,好比Zope、Button、Webapp就不说了)
(django、flask下面还有不少小库,好比messages和websocket。太多了,不说了)
pika皮卡丘(不一样服务器不一样程序之间的沟通大大简化)
pyzmq(也相似,更简单一些,功能比较有限,不过还能直接调用远程python函数-rpc)
sqlalchemy、pymongo、pycouch(还有好多较为方便的数据库累的)

各类google api
 特别是appengine、compute engine api,还有maps/places/search api
 还有谷歌的pipeline、mapreduce之类的、google docs那个编辑远程表格的也不错

爬虫方面也很多有用的库,好比beautifulsoup、scrapy。
还有 mechanize这种自动控制多个浏览器作事的库,利用浏览器引擎等。 4)其余: TK, WX, QT(作界面) pyglet、pygame、等(更好处理多个界面,各令块渲染,渲染频率,这些) geopy、shapely、gdal、geos、pyproj(地图处理,可能还有些,早就忘了)  可是数据库必定要选择PostGIS arrow、pendulum(python内带的datetime处理太弱了) py2exe类(把代码直接编译成executable,全部人能运行) simplejson(更快) pyyaml(相对json,更好写,呵呵) joblib(比那个pickle好太多了,直接把某object存到硬盘等) tqdm(在命令行显示progress进度,超简单)
相关文章
相关标签/搜索