2020 Python 计算生态二月推荐榜
20年2月10日 · 计算生态推荐榜 7112 人阅读
看见更大的世界,遇见更好的自己
See a better world to meet better for ourselves.
面向对象编程和数据库技术是计算机科学中的两种重要技术,在编程世界中占据着举足轻重的地位。无论是程序小白还是编程老炮,无不以掌握这两种技术为己任。遗憾的是,它们之间常常存在互不匹配的问题。ORM应运而生,它充当了面向对象和底层数据库之间的桥梁,有效解决了数据对象和数据库的匹配问题。在Python里有着众多的ORM库,使得程序员专注于业务逻辑的处理,提升开发效率,进而在编程的进阶之路上愈行愈远。
2020年2月,疫情肆虐,笔者心系武汉却又无能为力,足不出户只当为社会贡献一份稳定。闭关时刻,特别推荐10款优秀的Python计算生态,帮助程序员们理清对象关系映射,为疫情过后的返工建设蓄力发功。
Django Models
models是Django中的对象关系映射库。你的数据的唯一确定来源就是一个模型。它存储了数据的基本字段和行为。通常,每个模型映射到一个数据库表。
项目地址:https://docs.djangoproject.com/en/dev/topics/db/models/
SQLAlchemy
SQLAlchemy是Python 中的SQL工具包和对象关系映射器。它为应用程序开发人员提供了SQL的全部功能和灵活性。它提供了一整套众所周知的企业级持久性模式,这些模式是为高效和高性能的数据库访问而设计的。
项目地址:https://www.sqlalchemy.org/
dataset
dataset将Python字典存储在数据库中,可以使用SQLite、MySQL和PostgreSQL。它使得SQL的数据存储变得简单同时支持隐式表创建、批量加载和事务。简而言之,dataset使得读取和写入数据库中的数据就像读取和写入JSON一样简单。
项目地址:https://github.com/LuminosoInsight/python-ftfy
orator
Orator提供了一个简单而漂亮的ActiveRecord实现。它的灵感来自于Laravel框架的数据库部分,但在很大程度上进行了修改,使其更符合python风格。
项目地址:https://github.com/sdispater/orator
orm
orm是Python中的异步对象关系映射器,同时支持Postgres,MySQL和SQLite。它由SQLAlchemy核心,databases和typesystem构成。的、因为orm构建在SQLAlchemy内核上,所以可以使用Alembic来提供数据库迁移。
项目地址:https://github.com/encode/orm
peewee
Peewee是一个简单灵活的ORM。它只包含了很少的概念却都具表现力,使得它易于学习和使用。支持sqlite,
mysql, postgresql和cockroachdb,同时包含很多的扩展。
项目地址:https://github.com/coleifer/peewee
pony
Pony是一个高级的对象关系映射器。它最有趣的特性是能够使用Python生成器表达式和lambadas向数据库编写查询。Pony分析表达式的抽象语法树,并将其转换成SQL查询。
项目地址:https://github.com/ponyorm/pony/
pydal
pyDAL是一个纯粹的Python数据库抽象层。它使用指定的数据库后端语言动态地实时生成SQL/noSQL,pyDAL来自于最初的web2py的DAL,目的是与任何Python程序兼容。它不需要web2py,可以在任何Python环境中使用。
项目地址:https://github.com/web2py/pydal/
hot-redis
HOT Redis是一个用于redis-py客户端的包装器。它提供了广泛的数据类型模仿Python中的内置数据类型,如列表、字典和集合,以及标准库中的许多类例如Queue、threading和collections。
项目地址:https://github.com/stephenmcd/hot-redis
mongoengine
MongoEngine是一个MongoDB中的Python对象-文档映射器。它是基于pymongo开发的ODM库,对应与SQLAlchemy。同时,在MongoEngine基础上封装了Flask-MongoEngine,用于支持flask框架。
项目地址:https://github.com/MongoEngine/mongoengine
Python3Turtle