V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
alexapollo
V2EX  ›  Python

one-python:三千 Lib 库,每领域取 Top 1,属于 Python 的单库索引

  •  
  •   alexapollo ·
    geekan · 2016-06-03 20:54:29 +08:00 · 5370 次点击
    这是一个创建于 3124 天前的主题,其中的信息可能已经有所发展或是发生改变。

    传送门: https://github.com/geekan/one-python

    Python 有很多优势:自建的 dict 、 list 、 set 、 tuple ,标准化的数据结构,清晰明确的语法。 它把很多组件都标准化到语言的内部,从而非常的有效、易学、优雅。

    有感于Python的优雅与 awesome-python 的冗杂,我发起了 one-python 这个工程,每个领域只取 Top 1 (例外最多到前三),希望帮助大家更好的理解 Python ,也希望能够帮助语言更好的标准化

    • 只有真正高度标准化的语言才是优雅的。
    • 这里包含了库、框架、工具(如 IDE: PyCharm ),所有的东西都是我用过几年、觉得写得非常好的。

    品类选的较为谨慎,还比较少,也希望喜欢 Python 的同学可以一起完善这个工程 :)

    第 1 条附言  ·  2016-06-04 11:15:26 +08:00
    各位可以直接在工程上提交,我会认真控制质量,合并确实是业界顶级的、没有明显缺陷的组件。
    36 条回复    2016-06-05 21:39:00 +08:00
    shuax
        1
    shuax  
       2016-06-03 21:00:49 +08:00
    哦? python2 还是 python3 呢
    alexapollo
        2
    alexapollo  
    OP
       2016-06-03 21:15:42 +08:00
    @shuax 2 通吃,不过列表里大部分工程都有对 3 的兼容 :)
    patrickstar
        3
    patrickstar  
       2016-06-03 21:49:43 +08:00
    不错,找轮子是开工前的第一步
    我现在用 pyvenv 代替 virtualenv 了,不过我不确定那个更好
    akring
        4
    akring  
       2016-06-03 22:47:32 +08:00   ❤️ 1
    第 100star 达成
    alexapollo
        5
    alexapollo  
    OP
       2016-06-03 23:21:32 +08:00
    @patrickstar virtualenv 比较稳定,不过讲道理,其实可以试试 docker
    xiahei
        6
    xiahei  
       2016-06-03 23:31:32 +08:00
    @patrickstar 试过两个配合起来用? Pyenv 管理大版本, virtualenv 管理同版本, virtualenvwrapper 做 virtualenv 虚拟环境包管理器?
    notolddriver
        7
    notolddriver  
       2016-06-03 23:37:05 +08:00
    为啥没中文。
    dcoder
        8
    dcoder  
       2016-06-03 23:42:12 +08:00
    @alexapollo
    不错,收藏了
    dcoder
        9
    dcoder  
       2016-06-03 23:44:55 +08:00
    @alexapollo
    只取 top1 的 idea 非常好。建议如果增加到 top3, 那也要说明哪两个是备选.
    因为选轮子时候,最耗费时间的事情, 其实是比较 top1 和 top2, top3, top4 ...
    alexapollo
        10
    alexapollo  
    OP
       2016-06-04 00:13:07 +08:00
    @notolddriver 因为这个小工程可能也会在国外社区安利 :)
    mathgl
        11
    mathgl  
       2016-06-04 01:11:24 +08:00
    @dcoder top1 -2 之间的差异往往是口味的问题。
    ayaseangle
        12
    ayaseangle  
       2016-06-04 03:25:49 +08:00
    the firest thing is choosing a version of python.
    xell
        13
    xell  
       2016-06-04 04:24:43 +08:00   ❤️ 1
    看到一个中式英语,就直接在这里讲好了: PyCharm 介绍最后那句 Has free community edition available. 把 Has 去掉便可。

    另外,有两处介绍文字( caffe 和 iScript )没有以大写字母开头。
    gux928
        14
    gux928  
       2016-06-04 06:02:22 +08:00 via Android
    早起先标记
    jjx
        15
    jjx  
       2016-06-04 08:37:28 +08:00   ❤️ 1
    orm - sqlalchemy

    http 请求 - requests
    alexapollo
        16
    alexapollo  
    OP
       2016-06-04 10:18:47 +08:00
    @xell 多谢,反馈几处均已修改,也可以直接改了发 pull request 到工程来
    alexapollo
        17
    alexapollo  
    OP
       2016-06-04 10:30:52 +08:00
    @jjx SQLAlchemy 应该是顶级的,没有疑问,但使用起来感觉坑比较多,举两个例子:
    1. MySQL has gone away - 非常常见的连接问题,理应在框架内解决
    2. 数据库迁移没有原生方案,得依赖一些评价不高的第三方插件
    不过它确实是比较优秀的一个组件,我会尝试使用它

    requests 和 httpie 准备加入 :)
    alexapollo
        18
    alexapollo  
    OP
       2016-06-04 10:32:16 +08:00   ❤️ 1
    @dcoder 会用一些篇幅来说明的,尽量只取 Top 1
    alexapollo
        19
    alexapollo  
    OP
       2016-06-04 10:41:34 +08:00
    @jjx requests 已加入
    notolddriver
        20
    notolddriver  
       2016-06-04 12:40:12 +08:00
    @alexapollo 可以可以搞成中英双文,兼顾下我这种英文不怎么样的人群。
    notolddriver
        21
    notolddriver  
       2016-06-04 12:42:20 +08:00
    @alexapollo awesome-python 还有个 awesome-python-cn 呢 对不对 - -
    alexapollo
        22
    alexapollo  
    OP
       2016-06-04 16:57:29 +08:00
    @notolddriver 有考虑在做这个,你也可以发个 PR 试试~
    strahe
        23
    strahe  
       2016-06-04 17:24:38 +08:00
    你确定框架要放 django 吗?是你自己再用还是 star 最多,还是趋势最明显?
    junnplus
        24
    junnplus  
       2016-06-04 18:02:42 +08:00 via Android
    @strahe 隔壁正好在讨论 python 的 web 框架,都赶紧去战斗吧
    alexapollo
        25
    alexapollo  
    OP
       2016-06-04 18:23:44 +08:00
    @strahe 注意分类是 Framework ,我觉得 flask 、 webpy 、 tornado 等等离 Framework 还有一定的距离。
    alexapollo
        26
    alexapollo  
    OP
       2016-06-04 18:28:28 +08:00
    @jjx 还是 SQLAlchemy 的问题:在数据库里『加个字段』这样的场景太常见不过了,如果不能原生支持,我觉得库还是比较让人头疼的,我希望有人确定能有较好的、稳定的方案,这样就可以加到列表里
    XYxe
        27
    XYxe  
       2016-06-04 18:48:32 +08:00
    请教一个问题, import requests 以后,用 py2exe 打包的时候旧提示 error: python26.dll: No such file or directory 应该怎么解决呢?我用的是 python2.7.5 。
    jjx
        28
    jjx  
       2016-06-04 19:09:52 +08:00
    @alexapollo

    migration 除了第三方的 sqlalchemy-migration (openstack 也维护了一个版本) 还有原作者的 alembic https://bitbucket.org/zzzeek/alembic, 这算是官方的

    至于我个人, 我不用 migration, 而是自己写脚本, 因为涉及数据相关, 对其他的不信任, 实际过程中 migration 通常不是加字段这么简单, 可能需要复杂的数据迁移, 可能会涉及 n 多个数据库或 schema(在 saas 环境中)

    另外关于连接, 我想同 orm 没有关系, orm 通常只要做好连接池和接口就行, 连接限制是数据库本身的事情, 怎样有效的重用连接或是避免生成太多的连接是 dba 级或是应用级别需要考虑的
    Geoion
        29
    Geoion  
       2016-06-04 19:55:29 +08:00
    GUI 的话应该是 wxpython ,但是感觉这个库也有很多争议。
    strahe
        30
    strahe  
       2016-06-04 20:09:43 +08:00
    @junnplus
    @alexapollo
    从来没 sibi 的意思,只是问了楼主一个简单的问题而已.
    patrickstar
        31
    patrickstar  
       2016-06-04 20:36:49 +08:00   ❤️ 1
    @xiahei 你看错啦,我说的 pyvenv ,这是 python3 官方的虚拟管理,和 pyenv 差一个字母,我开始也搞混啦
    m31271n
        32
    m31271n  
       2016-06-04 23:50:06 +08:00
    @patrickstar pyenv-virtualenv
    xiahei
        33
    xiahei  
       2016-06-05 00:11:50 +08:00
    @patrickstar 我天,还真的。学习了,又长知识了。
    menc
        34
    menc  
       2016-06-05 10:57:07 +08:00   ❤️ 1
    讲道理,对不懂的领域至少问一问懂的人,没必要强行选 top1 出来。

    Machine Learning ( CV )
    你给选了一个 Caffe 是什么意思?

    Caffe 是一个通用的 Deep Learning 的库,并不是 CV 专用也并不是最好的 CV 库按照如今 DL 和 ML 越来越分离的趋势放到 ML 也有待商榷。
    说到 CV 选了 Caffe , OpenCV 像吃了屎一样
    而且 Caffe 出了名的难写,我也不是谦虚,怎么就 top1 了?
    alexapollo
        35
    alexapollo  
    OP
       2016-06-05 11:27:12 +08:00
    @menc CV 方向的 Machine Learning 库,有更好的吗?
    xfan001
        36
    xfan001  
       2016-06-05 21:39:00 +08:00
    supervisor
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5813 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 03:31 · PVG 11:31 · LAX 19:31 · JFK 22:31
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.