9个Python 工具,让你在工作上更占优势?
想要成为一个Python程序员,除了学各种教程之外,还需要熟悉几种已经在生产环境中经常使用的工具,这样会让你更快的成长!
好的工具给效率带来的提升不是从 1 到 1.1 倍速,而是从 1 到 10 倍速。在这里推荐 9个几乎每天都会用到的工具:
1.Upterm
Upterm 其实很简单好用,它是一个全平台的终端,可以说是终端里的 IDE,有着强大的自动补全功能。之前的名字叫 BlackWindow,有人跟他说这个名字不利于社区推广,改名叫 Upterm 之后现在已经17000+ Star了。
项目地址:https://www.omgubuntu.co.uk/2017/08/upterm-terminal-ubuntu
2.IPython
IPython是一个基于Python Shell的交互式解释器,但是有比默认Shell强大得多的编辑和交互功能。
IPython 的特点:
简单易用,用于并行计算的高性能工具;
更强的交互 shell;
支持交互数据可视化和图形界面工具;
灵活,可嵌入解释器加载到任意一个自有工程里;
当你一个库不会用的时候,用ipython 可以写一些测试代码。可以用ipython快速掌握库的方法和使用。
项目地址:http://ipython.org/install.html
3.GraphLab Greate
GraphLab Greate 是一个 Python 库,由 C++ 引擎支持,可以快速构建大型高性能数据产品。
GraphLab Greate 的特点:
可以在您的计算机上以交互的速度分析以 T 为计量单位的数据量;
在单一平台上可以分析表格数据、曲线、文字、图像;
最新的机器学习算法包括深度学习,进化树和 factorization machines 理论;
可以用 Hadoop Yarn 或者 EC2 聚类在你的笔记本或者分布系统上运行同样的代码;
借助于灵活的 API 函数专注于任务或者机器学习;
在云上用预测服务便捷地配置数据产品;
为探索和产品监测创建可视化的数据;
项目地址:https://pypi.org/project/GraphLab-Create/
4.Jupyter Notebook
Jupyter notebook(又称IPython notebook)是一个交互式的笔记本,支持运行超过40种编程语言。本文中,我们将介绍Jupyter notebook的主要特点,了解为什么它能成为人们创造优美的可交互式文档和教育资源的一个强大工具。
项目地址:http://jupyter.org/
5.Spark
Spark是一个围绕速度、易用性和复杂分析构建的大数据处理框架,提供了一个全面、统一的框架用于管理各种有着不同性质(文本数据、图表数据等)的数据集和数据源(批量数据或实时的流数据)的大数据处理的需求。
Spark拥有Hadoop MapReduce所具有的优点;但不同于MapReduce的是Job中间输出和结果可以保存在内存中,从而不再需要读写HDFS,因此Spark能更好地适用于数据挖掘与机器学习等需要迭代的map reduce的算法。
项目地址:http://spark.apache.org/
6.Pandas
Pandas 是基于 NumPy 的一个非常好用的库,正如名字一样,人见人爱。之所以如此,就在于不论是读取、处理数据,用它都非常简单。
Pandas 有两种自己独有的基本数据结构。读者应该注意的是,它固然有着两种数据结构,因为它依然是 Python 的一个库,所以,Python 中有的数据类型在这里依然适用,也同样还可以使用类自己定义数据类型。只不过,Pandas 里面又定义了两种数据类型:Series 和 DataFrame,它们让数据操作更简单了。
项目地址:http://pandas.pydata.org/
7.Scikit-Learn
Scikit-Learn是用Python开发的机器学习库,其中包含大量机器学习算法、数据集,是数据挖掘方便的工具。Scikit-learn的基本功能主要被分为六大部分:分类,回归,聚类,数据降维,模型选择和数据预处理。Scikit-learn需要NumPy和SciPy等其他包的支持,才能够使用。
项目地址:http://pandas.pydata.org/
8.PuLP
线性编程是一种优化,其中一个对象函数被最大程度地限制了。PuLP 是一个用 Python 编写的线性编程模型。它能产生线性文件,能调用高度优化的求解器,GLPK,COIN CLP/CBC,CPLEX,和GUROBI,来求解这些线性问题。
项目地址:https://pulpproject.org/
9.Matplotlib
matplotlib在Python中应用最多的2D图像的绘图工具包,使用matplotlib能够非常简单的可视化数据。
matplotlib 尝试使容易事情变得更容易,使困难事情变为可能。通过 Matplotlib,你只需要输入几行代码,便可以生成绘图,直方图,功率谱,条形图,错误图,散点图等。
项目地址:https://matplotlib.org/