Python程序员必备六大单品!让应用简单易维护!

Python程序员必备六大单品!让应用简单易维护!

首页冒险解谜侵入源代码更新时间:2024-08-03

无论是为了快速编译Python,为Python桌面应用程序构建本机UI还是改进现有Python代码,以下这六大Python项目都涵盖了。Python通过易使用的特点而被广泛应用,同时也得到了丰富的第三方项目——库、附加组件和互补开发工具的支持,这些项目将Python扩展到更大的用例范围。

其中一些项目,如PyInstaller和WxPython,对于正在构建桌面和最终面向用户应用程序的Python开发人员来说是非常闪耀的。其他的,比如PyPy,被用来给服务器端的Python应用程序增加额外的性能。 而PBR、CFFI和MyPy,对于开发各种Python应用程序是有用的,无论应用在哪运行。

如果你是一名Python程序员,这六大项目一定要熟练掌握,同时,这六个在最近几星期都推出了新版本。

Python必备单品一:PyPy

如果程序员想要更快的Python应用程序,最简单的方式就是通过PyPy,Python运行时与时间(JIT)编译器。使用PyPy的Python应用程序的运行速度平均是普通Python应用的7.5倍快。不幸的是,PyPy与许多Python明星框架并不总能很好兼容,PyPy 5.9在解决这个问题上取得了重大进展。

框架NumPy和Pandas现可运行在PyPy的Python 2.7兼容版本上,这些框架的大部分问题源于PyPy与现有C代码的接口。为了解决这个问题,PyPy 5.9对CFFI库和PyPy的Python C API兼容性层进行了改进。

此外,在5.9版本中,PyPy的JSON解析器在处理多种JSON对象尤其是重复使用相同key的JSON对象明显更快。

程序员可直接从其网站下载PyPy二进制文件。官方二进制文件适用于不同CPU体系结构的Windows、Mac OS和Linux。请注意,Python 2.7和Python 3.5的兼容性不同,存在不同的二进制文件,因此请确保正在获取与将要运行的脚本匹配的版本。

Python必备单品二:CFFI

C外部函数接口库(CFFI)为Python应用程序与独立C库互操作提供了可能。虽然Python的库存版本CPython拥有自己的库用于这类工作,称为Ctypes,但CFFI使得与C 的交互更容易和简便,比Ctypes更易于Python用户使用。

与PyPy一起更新的CFFI v1.11增加了小而有用的更改。现在可以使用betas来实现即将到来的Python 3.7,更好地支持Windows上的外部错误处理,并支持C中更多的现代标准类型,例如float / double _Complex和thechar16_t和char_32t类型。对于在内部使用Unicode的C库来说,最后两个是最重要的。

CFFI可以从Python包索引中独立下载,也可以使用Python的pip工具安装:pip install cffi。

Python必备单品三:PyInstaller

关于Python最常见的问题之一是“如何从Python脚本生成独立的可执行文件?”,PyInstaller一直是最好的答案之一。

PyInstaller将Python应用程序打包到单个目录或单个可执行文件中,捆绑任何所需的第三方库并与绝大多数常见的库和框架配合使用。

PyInstaller 3.3中最大的改进是对Python 3.6的支持,因为Python 3.6已经到了, PyInstaller 3.3还包括一个更广泛兼容的引导加载程序,适用于Windows可执行文件,并扩展了捆绑常见库(如QT,GTK ,NumPy和Django)的支持。

PyInstaller不久之后不太可能添加的一个功能是交叉打包,例如,在Windows上创建Mac兼容应用程序。程序员需要在要部署的同一平台上运行PyInstaller,无论是Windows、Mac还是Linux。

PyInstaller可从Python包索引中安装,也可以使用Python的pip工具安装:pip install pyinstaller。源代码在GitHub上(https://github.com/pyinstaller/pyinstaller)可用于那些想要自己编译引导程序的人,但大多数人不需要这样做。

Python必备单品四:Python Build Reasonableness (PBR)

Setuptools是用于打包Python项目的子系统。管理给定项目的安装工具可能非常繁琐,特别是在自动生成需求,管理文档文件或编辑项目贡献者数据时。

PBR是Python Build Reasonableness的缩写,用于以一致的方式管理Setuptools包装的库。它可以自动化Setuptools打包的许多方面,例如版本号、生成作者和ChangeLog文件以及生成Sphinx风格的文档。PBR最初是作为OpenStack项目的一部分开发的,但是使用PBR维护的内容不得以任何方式连接到OpenStack。

PBR可在Python包索引中下载,可以通过键入pip install pbr来安装pip。源代码在GitHub上可用(https://github.com/openstack-dev/pbr)。

Python必备单品五:WxPython

想要跨平台桌面应用程序的Python开发人员可以从多个工具包中进行选择。WxPython是WxWidgets库的封装器,它使用了支持主机平台的本地UI元素,包括Windows,Mac,Linux和其他类Unix操作系统。

早期版本的WxPython被放弃了传统的设计决策,使其变得越来越慢,而且不太适合使用。为了解决这个问题,WxPython的开发人员对WxPython的4.0分支做了重大改变。

目标是允许开发人员使用WxPython更快地开始,并且通过它创建的框架和应用程序具有更优的性能、更易维护。然而,任何现有WxPython项目都需要修改为使用WxPython 4.0。

WxPython 4.0仍然处于测试阶段,程序员可以通过pip install wxpython的方式在Python包索引中使用,但在正式发布之前可能会被更新几次。

想直接侵入源代码的程序员可以查看GitHub资料库(https://github.com/wxWidgets/Phoenix)。请注意,WxPython的4.0分支以“Phoenix”代号进行标记,以使其与早期版本不同。

Python必备单品六:Mypy

大多数程序员选择Python是因为其简单快捷,但是当代码难以推理,测试和调试时,使用体验并不是很棒。Mypy在编译时向Python添加静态类型检查,使Python程序更加一致和可维护,但不增加运行时开销。

Mypy 0.530增加了对协议的支持,协议是用于Python子类的当前实验类型功能。它还为仅用于包含特定类型的对象添加“TypedDict”类型,并且逐个对文件进行更严格的类型检查。

Mypy可以在Python包索引中使用,并且可以安装withpip install mypy。有兴趣直接侵入源代码的程序员可以查看GitHub上的代码(https://github.com/python/mypy)。

这六大必备单品,程序员可已经熟练掌握?使用感觉如何?

查看全文
大家还看了
也许喜欢
更多游戏

Copyright © 2024 妖气游戏网 www.17u1u.com All Rights Reserved