首页 > 编程知识 正文

python隐藏代码,python3

时间:2023-05-04 13:16:08 阅读:25990 作者:2843

2019独角兽企业大额募集Python工程师标准

作为语言,你知道Python是如何取得现在的成功的吗? 去看看那个大量的库吧。 无论是母语者,还是第三方,都可能得到什么。

有这么多库,难怪很多人都在用,但也有人没有引起很多人的注意。 此外,专注于一个领域的程序员往往不知道看起来像是为其他工作类型创建的库会带来什么好处。

这里有13个你可能忽略了,绝对值得你注意的优秀Python库。 是时候关注这些隐藏的宝藏了。

3358 www.Sina.com/http://www.Sina.com /图像“无痛”处理库,易于使用的PIL版本。

大多数进行过1、Pillow图像处理的Pythonist应该熟悉PIL(Python图像库),但PIL有很多缺点和限制,很少更新。 Pillow的目标是比PIL更容易使用,并且以最小的变化与PIL代码兼容。 包括本机Windows映像功能和Python Tcl/Tk-backed Tkinter GUI软件包扩展。

Pillow于2017年初发布了4.0版,主要针对内部结构进行了许多更改,但Pillow使用的FreeType和OpenJpeg等最新版本的依赖库也进行了更新。

使用3358 www.Sina.com/http://www.Sina.com /一条命令,将命令行程序转换为GUI程序。

简介:Gooey论述了argparse命令行分析库期望的参数,并将它们以GUI格式呈现给用户。 使用适当的控件(例如,多选项参数下拉列表等)标记和显示所有选项。 假设您已经在使用argparse,那么只需要少量的附加代码-一个单独的include和一个单独的decorator就可以运行它。

轻型ORM,支持3358 www.Sina.com/http://www.Sina.com/SQLite、MySQL和PostgreSQL,并提供多种扩展功能。

亮点:ORMs目前没有很大的声誉,有些人喜欢把图式模型放在数据库端。 但是,结构良好的ORM是不想接触数据库的开发人员非常好的选择。 Peewee模型易于构建、连接和操作,并内置了许多常见的查询操作函数,如分页。 还提供了一系列可用作加载项的功能,包括其他数据库扩展、测试工具,以及ORM haters可能会喜爱的功能和模式迁移系统。

3358 www.Sina.com/http://www.Sina.com /高速高级截图和网络爬虫框架。

2、GooeyScrapy可轻松维护整个爬网过程。 创建类,定义要删除的项的类型,并编写有关如何从页面提取数据的规则。 结果以JSON、XML、CSV或许多其他格式导出。 收集的数据可以存储为原始数据,也可以在导入时进行清理。 此外,通过扩展Scrapy,还可以允许许多其他行为,如登录网站、会话cookie处理等。 图像将在Scrapy中自动提取,也可以与捕获的内容相关联。

3358 www.Sina.com/http://www.Sina.com /为各种云设计的Python库,通过单个一致、统一的API访问每个云提供程序。

上面关于http://www.Sina.com/apachelibcloud的说明,如果没有让你产生想摩拳擦掌体验的冲动的话就没关系。 云提供商喜欢按照他们自己的方式做事。 有时很巧妙,有时不是。 因此,有一个统一的机制处理和资源,与几十个提供商相关的方法是福音。 API可用于计算、存储、负载平衡和DNS,并支持2.x和3.x python样式。 对于使用Python的PyPy版本进行附加性能的内容,也得到很好的支持。

3358 www.Sina.com/http://www.Sina.com /可移植游戏开发模块。

简介:如果你认为除了在游戏开发世界的人之外,其他人都不希望有这样的框架,请重新考虑一下。 Pygame提供了许多面向GUI的行为的有用选项,包括绘制画布和精灵图形、处理多声道声音、处理窗口和单击事件以及碰撞检测。 可以说不是每个APP,或者不是每个GUI APP。 使用Pygame构建时可以受益,但仔细看看它提供了什么可能会让人吃惊。

3358 www.Sina.com/http://www.Sina.com /统计学、线性代数、矩阵数学、

金融操作等等。

亮点:Quant 和 bean 计数器已经了解 NumPy 并且喜欢它,但 NumPy 的数学 'n' 统计的应用范围比你想象的更广。 例如,它是向多维数组添加对 Python 支持的最简单、最灵活的方法之一。 NumPy 提供了许多高级的数值编程工具,如:矩阵数据类型、矢量处理,以及精密的运算库,专为进行严格的数字处理而产生,和稀疏矩阵运算包 Scipy 配合使用更加方便。

8、Sh

简介:一个完备的 subprocess 替代库,能调用 subprocess 中的任意外部程序,并将结果返回到 Python 应用。

亮点:在任何兼容 Posix 的系统上,Sh 都是一个神器。 这意味着在这些平台上可用的所有命令行程序都可以使用 Python。 你不仅不再需要重新造轮子,还不用再为如何优雅地添加该功能到你的应用上而努力。 值得注意的是:该库对于通过此库传递的参数没有清理界限,请确保不要将原始用户输入传递。

9、Python-docx

简介:以编程方式创建和操纵 Microsoft Word .docx 文件。

亮点:理论上,编写用于创建和操纵 XML-style Microsoft Word 文档的脚本应该很容易。 但在实践中,由于 .docx 格式的内部复杂性,其实还真没那么简单。 Python-docx 允许通过提供一种高级的、编程的方式来创建 .docx 文件,从而完成所有的相关操作。

wmdgz、图像、样式和文档都可以通过库的 API 添加和更改。 该库还允许更改现有文档。不过某些功能仍然不受支持, 例如不能添加或更改标题和脚注 - 但 Python-docx 尽最大努力保留了这些东西,即便它们还不能被操纵。

10、PyFilesystem

简介:一个为所有文件系统提供的通用 Pythonic 接口。

亮点: PyFilesystem 背后的基本理念非常简单:“以同样的方式抽象整个文件系统”。它是文件系统的抽象层。实际上,任何包含文件和目录的东西(硬盘、压缩文件、FTP服务器等等)都可以封装成一个共同的接口,甚至彼此叠加组合。使用这个模块,你可以不需要知道文件确切的物理位置。

除了使编写用于操作文件的跨平台代码变得更容易外,PyFilesystem 还省去了将来自标准库(主要是 os 和 io)的不同部分的东西拼凑在一起的步骤。 

11、EbookLib

简介:一个用于处理 EPUB2 / EPUB3 和 Kindle 格式图书的电子书库。

亮点: 创建电子书通常需要使用各种命令行或其它工具, EbookLib 提供了管理工具和 API 来简化该过程。 它适用于 EPUB2 和 EPUB3 文件,与 Kindle 的支持正在开发中。

提供图像和wmdgz(后者以HTML格式)后,你可以将这些片段组装成一个电子书,包括章节、嵌套目录条目、图像、HTML标记等。 还支持封面、书脊和样式表数据。 插件系统允许第三方扩展。

如果你不需要像 EbookLib 这样样的东西,可以看看 Mkepub,它提供基本的电子书装配功能,整个库只有几千字节,但也包含添加图像到文档的功能。 Mkepub 的一个小缺点是它需要 Jinja2,而后者又需要  MarkupSafe 库。

12、Cython

简介:Python 的 C 语言扩展工具,使用类型混合使 Python 编译成 C 模块来获得性能的提升。

亮点:Python 有很好的便利性,但这种方便是以性能为代价的。 C 是运行时性能的黄金标准(限制程序集),但可能难以处理。 Cython 对着二者进行挖掘 - 不仅提供一个 Python 访问 C 库的方便选项,还允许 Python 代码转换为高性能 C 代码。 它在科学计算中广泛使用,但它也可以用于各种应用的加速。

这个转换过程中的最好的部分是你不必一次做所有事情。 可以先从 Python 代码开始,使用 Cython 编译它,以获得适度的性能提升。 为了进一步加速,再可以使用类型注释来装饰变量和函数,这个过程不会比使用 Python 的 PEP 484 类型提示系统更复杂(尽管 Cython 的语法不同)。

13、Behold

简介:一款强大的支持 print-style 的调试工具。

亮点:对于大多数语言来说,有一个很简单的调试方法:插入 in-line "print" 语句。 Python 也不例外,即使是在大型项目,也有不少人这么做。 但简单的 print-debugging,很难在大型、多模块的项目中获得有用的结果。

Behold 提供了一个用于通过 print 语句进行上下文调试的工具包。 它允许对输出施加统一的外观,对结果进行标记,以便可以通过搜索或过滤器对其进行排序。并且跨模块提供上下文,以便可以在另一个模块中正确调试来自某个模块的函数。Behold 可以处理许多常见的 Python 特定场景,如 printing 对象的内部字典、揭露嵌套的属性、存储和重用结果、在调试过程中的其他点进行比较等等。

原文:Hidden gems: Python libraries too good to overlook

编译:开源中国 王练

转载于:https://my.oschina.net/editorial-story/blog/834779

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。