`
乱蓬头199303
  • 浏览: 81740 次
文章分类
社区版块
存档分类
最新评论

Python 程序员都会喜欢的 6 个库

阅读更多

摘要: 在编程时,小挫折可能与大难题一样令人痛苦。没人希望在费劲心思之后,只是做到弹出消息窗口或是快速写入数据库。因此,程序员都会喜欢那些能够快速处理这些问题,同时长远来看也很健壮的解决方案。 下面这6个Python库既可以快速解决眼前的棘手问题,同时也能够作为大型项目的基础。

在编程时,小挫折可能与大难题一样令人痛苦。没人希望在费劲心思之后,只是做到弹出消息窗口或是快速写入数据库。因此,程序员都会喜欢那些能够快速处理这些问题,同时长远来看也很健壮的解决方案。

下面这6个Python库既可以快速解决眼前的棘手问题,同时也能够作为大型项目的基础。

Pyglet

image

是什么:Pyglet是一个纯Python语言编写的跨平台框架,用于开发多媒体和窗口特效应用。

为什么需要它:从头开发图形界面应用所需要的功能模块是十分繁琐的,Pyglet提供了大量现成的模块,省去了很多的时间:窗口函数,OpenGL特效,音频与视频回放,键鼠处理以及图片处理。(不过,Pyglet并没有提供类似按钮、工具栏或菜单等UI部件。)

所有上述模块都是在Windows、OS X或Linux平台下原生实现的,并不依赖外部二进制包;它是纯Python语言编写的。Pyglet通过BSD协议发布,可以用于任何商业和开源项目。

Peewee

image

是什么:Peewee是一个小型但是十分强大的库,支持通过ORM的方式访问数据库,原生支持SQLite、MySQL和PostgreSQL等数据库。

为什么需要它: 任何一个需要经常使用外部数据的应用基本都会用到数据库,但是通过临时连接从数据库中读写数据会带来很多麻烦。

Peewee提供了一条访问数据库资源的安全、稳定的通道。对于Python程序员和数据库工程师来说,该库所提供的Python类使用起来将会得 心应手。有了Peewee的支持,我们可以快速便捷地访问数据库,后续还可以扩展加入更多的选项,不需要重新设计。Peewee同时原生支持数据库事务 (transaction),并有许多可选的额外模块,提供了从数据库连接池(connection pooling)到类似多对多(many-to-many)的高级field类型等功能。

Bottle

image

**是什么: **Bottle是一个小型的轻量网络开发框架,同时速度也很快。

为什么需要它: 如果你只是想快速创建一个Restful API接口,或者只想用网络开发框架的做一个简单的应用,Bottle可以轻松地满足你的要求。它具备了你将需要的所有功能:路由、模板、访问请求与响应 数据(request and response data)、支持多种网络服务器以及WebSockets等高级功能。

创建一个应用所需的工作极少,而且Bottle在设计时就考虑了可扩展性,如果需要更多高级功能,随时就可以接入。

Invoke

是什么:简单来说,Invoke 让你通过一个Python库便捷地执行系统管理任务。

为什么需要它: 谁不想要一个“可以运行shell命令、定义并归类执行任务的简洁、高级接口”呢?利用Python替代一般的shell脚本,并执行相应的任务,是完全 合理的。Invoke提供了执行常见命令行任务并进行管理的解决方案。对于Invoke来说,每个管理任务就像是Python函数一样,可以在此基础上优 雅地设计更为复杂的任务。

需要注意的是,Invoke当前仍是预览版;如果你想使用稳定的工具(即使是不再积极开发),可以考虑Invoke的前身——Fabric。

Splinter

是什么:Splinter是一个自动化测试网络应用的Python库。

为什么需要它: 大家都知道,没有什么比自动化网络应用测试更无聊的事了。有了Splinter,就可以将打开浏览器、输入URL、填写表单、点击按钮等全部操作自动化。

特定的浏览器需要使用相应的驱动器(drivers),不过还好已经自带了Chrome和Firefox驱动器。另外,Splinter还可以通过Selenium Remote来远程控制其他机器上的浏览器。你甚至可以在目标浏览器中手动执行JavaScript代码。

如果你想知道某个浏览器在浏览指定网站时的具体情况,那么Splinter将是一个很有用的工具。如果想了解不依赖浏览器与网站进行交互,可以查看Twill。(译者:Twill是一种脚本语言,支持用户通过命令行浏览网络。)

Arrow

是什么:Arrow这个库可以更好地处理Python中的日期和时间(data/time)。

**为什么需要它: **处理时区、日期转换、应对不同的日期格式以及其他日期相关的东西,足够让你头疼一天半的。如果使用Python自带标准库中的模块,那么估计你得头疼两天了。

改用Arrow库的话有四大好处,不管长期还是短期都是很有用的。第一,它可以完美替代Python中的datetime模块,这意味着你仍可以使用类似.now()和.utcnow()这些常见的函数调用形式。第二,它提供了满足转换时区等常见需求的方法。第三,它提供了“人性化”的日期/时间信息——也就是,它可以很轻松地告诉你某件事是在“一小时以前”发生的,或是“将在两小时后”发生。第四,它很容易地将日期/时间信息转换为当地时间。

​​​​​​​

原文链接

分享到:
评论

相关推荐

    Python面试宝典(完整版),python程序员面试宝典pdf,Python

    这份文档涵盖了Python语言的核心概念、数据结构、控制流、函数、模块化编程、面向对象设计、错误与异常处理、标准库以及常用的第三方库等多个方面,同时也会涉及到一些高级主题,如并发编程、元编程和性能优化等。...

    java For python 程序员

    1. Java教程是为Python程序员准备的,目的是帮助已经熟练使用Python的开发者快速学习Java语言,并迁移到Java编程环境上。 2. Java教程同样适合那些想掌握大数据基础技能的算法工程师,因为Java是处理大数据领域中...

    python程序员指南

    在实际项目中,Python程序员还需要了解如何使用常见的第三方库,如NumPy用于数值计算,Pandas用于数据处理,Matplotlib和Seaborn进行数据可视化,Django或Flask框架进行Web开发等。 此外,版本管理工具如Git,以及...

    给Python程序员的OpenAI GPT

    这通常包括安装Python,Python的包管理器pip,以及一个虚拟环境,以隔离项目依赖,防止版本冲突。在安装Python和pip后,你可以创建一个虚拟环境,例如使用`venv`模块,然后激活它。 获取OpenAI API密钥是使用服务的...

    Python 程序员指南(PDF)

    《Python程序员指南》是一本专为初学者和有一定基础的Python开发者设计的教程,它深入浅出地介绍了Python语言的核心概念和技术。这本书旨在帮助读者掌握Python编程的基本技能,提升解决问题的能力,同时也为进阶开发...

    Python程序员面试算法宝典(带目录).rar

    《Python程序员面试算法宝典》是一本专门为Python程序员面试准备的指南,涵盖了广泛的数据结构和算法知识,旨在帮助读者在面试中展现出扎实的编程基础和解决问题的能力。这本书以PDF格式包含在"Python程序员面试算法...

    P0002-python程序员指南中文版.rar

    "P0002-python程序员指南中文版.rar"是一个压缩文件,包含了一份详细的Python编程指南,专为中文用户设计,旨在帮助初学者和有经验的程序员深入理解Python语言的核心概念和技术。 这份指南可能涵盖了以下关键知识点...

    Python程序员指南

    Python程序员指南,学习Python的文档

    程序员面试宝典,最新Python程序员面试宝典

    【Python程序员面试宝典】 在IT行业中,Python程序员的需求逐年增长,这使得Python程序员的面试竞争日益激烈。为了在众多应聘者中脱颖而出,掌握全面的Python知识和面试技巧至关重要。"程序员面试宝典,最新Python...

    Python-程序员找工作黑名单换工作和当技术合伙人需谨慎啊

    在IT行业中,特别是对于Python程序员来说,找到一份合适的工作至关重要。然而,这个过程中可能存在许多陷阱和潜在的问题。标题“Python-程序员找工作黑名单换工作和当技术合伙人需谨慎啊”揭示了这一主题,它提醒...

    python基础面试题 python程序员面试题

    python基础面试题 python程序员面试题

    B站黑马程序员Python教程学习笔记.zip

    Python是一种高级、通用的编程语言,以其简洁、易读的语法而闻名,被广泛应用于网络爬虫、数据分析、机器学习、人工智能等多个领域。在B站黑马程序员的Python教程中,你将深入理解Python的基础概念,包括: 1. **...

    python面试宝典

    - 一个开源的Python Web框架和异步网络库。 【爬虫技术】 1. 常用库与模块 - 数据库:MySQL、MongoDB、Redis等,根据数据类型选择合适的存储方式。 - 网络数据包:如requests库用于网络请求。 - 解析数据包:...

    Python程序员的30个常见错误.doc

    ### Python程序员的30个常见错误 #### 一、引言 在《Python程序员的30个常见错误》这篇文章中,作者总结了新老Python程序员常犯的一些错误,旨在帮助读者避免这些错误。作者强调,这些错误都是基于多年教授Python的...

    属于 Python 程序员的表白神器+将满满的喜欢拼成你的样子+单行画爱心+灵魂画手工程师的浪漫+让女神欲罢不能的套路

    整理了一份适合 Python 程序员的表白套路,目前仅收录四个 以下是简易的使用指南 1. 单行画爱心 $ python3 one_line_love.py 2. 将满满的喜欢拼成你的样子 $ python3 -m pip install pillow $ python3 all_love_in...

    python-15 Python程序员的开发生态

    在第15章"Python程序员的开发生态"中,我们将深入探讨这个生态系统的各个方面。 15.1 Python标准库是Python语言的基础部分,包含了大量的内置模块,这些模块提供了各种功能,使得Python成为一种功能丰富的编程工具...

    Python-适合初学者Python程序员的小型简单编辑器用Python和Qt5编写

    标题中的“Python-适合初学者Python程序员的小型简单编辑器用Python和Qt5编写”指出,这个项目是一个专为Python初学者设计的编辑器。它使用了Python编程语言以及Qt5库来构建,Qt5是一个功能强大的跨平台应用程序开发...

    Head First Python 程序员必读系列

    《Head First Python 程序员必读系列》是一本专为初学者设计的Python编程教程,它通过直观易懂的方式介绍了Python的核心概念和技术。在深入学习这本书的过程中,你将逐步掌握以下几个重要的Python编程知识点: 1. *...

Global site tag (gtag.js) - Google Analytics