前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python开发者必备6个基本库

Python开发者必备6个基本库

作者头像
py3study
发布2020-01-08 16:27:00
1.4K0
发布2020-01-08 16:27:00
举报
文章被收录于专栏:python3python3

原文:6 essential libraries for every Python developer 作者:Serdar Yegulalp 翻译:Peter

译者注:无论你是想快速入手Python还是想为Python应用程序构建本地UI,亦或者对Python代码进行优化,本文列举的6个库,都有可能会帮到你。

由于具有易于使用的优势,Python在各个行业和学科中都有着广泛的应用。也因此得到了大量第三方项目的支持–库、组件和开发套件,这些项目将Python的应用领域不断的扩大。

其中的一些项目,如PyInstaller和WxPython,对于正在构建桌面和终端用户程序的Python开发人员来说是值得借鉴的。其他的,比如PyPy,用于优化服务器端的Python应用程序。而其他一些应用,如PBR、CFfI和MyPy,对于开发所有类型的Python应用程序都很有用。

项目一: PyPy

什么是PyPy?

如果想要更快的Python应用程序,最简单方法就是使用PyPy,带有实时(JIT)编译器的Python运行时。Python应用程序使用PyPy运行,平均速度是普通Python应用程序的7.5倍。不幸的是,PyPy在Python的许多star框架中并不总是表现出色。PyPy5.9在这方面取得了重大进展。

PyPy 5.9 特点

数据科学框架NumPy和Pandas现在运行在PyPy的Python 2.7兼容版本上。 围绕这些框架的大部分问题都源于PyPy与现有的C代码接口。为了解决这个问题,PyPy 5.9对CFFI库(见下文)和PyPy的Python C API兼容层进行了改进。

此外,在5.9版本中,PyPy的JSON解析器在处理多种JSON对象时明显更快。

PyPy下载地址

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

BitBucket上提供源代码和错误跟踪

项目二:CFFI

什么是CFFI?

The C Foreign Function Interface library的简写,可称做:C外部函数接口库(CFFI),为Python应用程序与独立C库互操作提供了一种方式。虽然Python的库版本CPython拥有自己的库,用于这种类型的工作,称为Ctypes,但CFFI使得与C ++的交互更容易,更简便,比Ctypes更易于Python用户使用。

CFFI 1.11特点

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

CFFI 1.11 下载地址

CFFI可以从Python包索引中独立下载,也可以使用Python的pip工具安装:pip install cffi。 BitBucket上提供源代码和错误跟踪

项目三:PyInstaller

什么是PyInstaller?

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

PyInstaller 3.3特点

PyInstaller将Python应用程序打包为单个目录或单个文件可执行文件中,将需要的第三方库与其一起打包,并与绝大多数公共库和框架配合使用。

PyInstaller 3.3中最大的改进是对Python 3.6的支持,这是自Python3.6以来所没有的。 PyInstaller 3.3还包括一个更广泛兼容的引导加载程序,适用于Windows可执行文件,并扩展了绑定常见库(如QT,GTK +,NumPy和Django)的支持。

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

PyInstaller 3.3下载地址

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

项目四:Python Build Reasonableness (PBR)

什么是 PBR?

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

Python PBR特点

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

Python PBR下载地址

PBR可用pip install pbr命令在Python包索引安装。源代码在GitHub上可查找

项目五:WxPython

什么是WxPython?

对于想创建跨平台Python应用程序的开发人员来说,有许多工具包可以选择。 WxPythonWxWidgets库的封装器,它使用了支持主机平台的本地UI元素,包括Windows,Mac,Linux和其他类Unix操作系统。

WxPython 4.0特点

早期版本的WxPython被遗留的设计决策压得喘不过气,工作速度更慢,而且不太适合使用。为了解决这个问题,WxPython的开发人员对WxPython的4.0版本做了重大改变。

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

WxPython 4.0下载地址

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

那些想直接对其进行黑客攻击的用户可以查看GitHub资料库。请注意,WxPython 4.0版本以“Phoenix”代号进行标记,以使其与早期版本区别开来。

项目六:Mypy

什么是Mypy?

Python的动态特性既是一种好处,也是一种麻烦–对于快速构建软件很好,但当代码难以推理,测试和调试时,缺点就显而易见。 Mypy在编译时向Python添加静态类型检查,使Python程序更加一致和可维护,但不会增加运行时开销。

Mypy 0.530特点

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

Mypy 0.530下载地址

Mypy可以在Python包索引中使用,并且可以使用pip install mypy命令安装。有兴趣的可以在GitHub上直接找到 check out the code on GitHub

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-09-02 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 项目一: PyPy
    • 什么是PyPy?
      • PyPy 5.9 特点
        • PyPy下载地址
        • 项目二:CFFI
          • 什么是CFFI?
            • CFFI 1.11特点
            • CFFI 1.11 下载地址
            • 项目三:PyInstaller
              • 什么是PyInstaller?
                • PyInstaller 3.3特点
                  • PyInstaller 3.3下载地址
                  • 项目四:Python Build Reasonableness (PBR)
                    • 什么是 PBR?
                      • Python PBR特点
                        • Python PBR下载地址
                        • 项目五:WxPython
                          • 什么是WxPython?
                            • WxPython 4.0特点
                              • WxPython 4.0下载地址
                              • 项目六:Mypy
                                • 什么是Mypy?
                                  • Mypy 0.530特点
                                    • Mypy 0.530下载地址
                                    领券
                                    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档