原文链接http://www.pythonzxw.com/thread-522-1-1.html,标题略有改动
想要成为一个python程序猿,除了学习各种技术之外,熟悉各种已经在生产环境中使用的工具会让你更快的成长!工善于其事必先,必先利其器。工具是提供效率最有效的帮手。
这里有7款python工具,是python学习者必不可少的工具。当你对他们有一定了解后,会成为提升python技能和你找工作的绝对优势!下面就了解它们一下吧:
1.IPython
IPython是一个基于Python Shell的交互式解释器,但是有比默认Shell强大得多的编辑和交互功能。用了它之后你就不想再用自带的Python shell了,IPython支持变量自动补全,自动缩进,支持bash shell命令,内置了许多实用功能和函数,同时它也是科学计算和交互可视化的最佳平台。
IPython提供了如下特性:
更强的交互shell(基于Qt的终端)
一个基于浏览器的记事本,支持代码,纯文本,数学公式,内置图表和其他富媒体
支持交互数据可视化和图形界面工具
灵活,可嵌入解释器加载到任意一个自有工程里
简单易用,用于并行计算的高性能工具
当你一个库不会用的时候,用ipython可以写一些测试代码。可以用ipython快速掌握库的方法和使用。
地址:https://ipython.org/
2.Scikit-Learn
Scikit-Learn是用Python开发的机器学习库,其中包含大量机器学习算法、数据集,是数据挖掘方便的工具。Scikit-learn的基本功能主要被分为六大部分:分类,回归,聚类,数据降维,模型选择和数据预处理。Scikit-learn需要NumPy和SciPy等其他包的支持,才能够使用。
网址:https://scikit-learn.org/stable/
3.Spark
Spark是一个围绕速度、易用性和复杂分析构建的大数据处理框架,提供了一个全面、统一的框架用于管理各种有着不同性质(文本数据、图表数据等)的数据集和数据源(批量数据或实时的流数据)的大数据处理的需求。
Spark基于map reduce算法实现的分布式计算,拥有Hadoop MapReduce所具有的优点;但不同于MapReduce的是Job中间输出和结果可以保存在内存中,从而不再需要读写HDFS,因此Spark能更好地适用于数据挖掘与机器学习等需要迭代的map reduce的算法。
网址:http://spark.apache.org/
4.PuLP
线性编程是一种优化,其中一个对象函数被最大程度地限制了。PuLP是一个用Python编写的线性编程模型。它能产生线性文件,能调用高度优化的求解器,GLPK,COIN CLP/CBC,CPLEX,和GUROBI,来求解这些线性问题。
网址:https://pypi.org/project/PuLP/
5.Matplotlib
matplotlib在Python中应用最多的2D图像的绘图工具包,使用matplotlib能够非常简单的可视化数据。
matplotlib尝试使容易事情变得更容易,使困难事情变为可能。通过Matplotlib,你只需要输入几行代码,便可以生成绘图,直方图,功率谱,条形图,错误图,散点图等。
网址:https://matplotlib.org/
6.GraphLab Greate
GraphLab Greate是一个Python库,由C++引擎支持,可以快速构建大型高性能数据产品。
关于GraphLab Greate的特点:
可以在您的计算机上以交互的速度分析以T为计量单位的数据量。
在单一平台上可以分析表格数据、曲线、文字、图像。
最新的机器学习算法包括深度学习,进化树和factorization machines理论。
可以用Hadoop Yarn或者EC2聚类在你的笔记本或者分布系统上运行同样的代码。
借助于灵活的API函数专注于任务或者机器学习。
在云上用预测服务便捷地配置数据产品。
为探索和产品监测创建可视化的数据。
网址:https://turi.com/
7.Pandas
Pandas是基于NumPy的一个非常好用的库,正如名字一样,人见人爱。之所以如此,就在于不论是读取、处理数据,用它都非常简单。
Pandas有两种自己独有的基本数据结构。读者应该注意的是,它固然有着两种数据结构,因为它依然是Python的一个库,所以,Python中有的数据类型在这里依然适用,也同样还可以使用类自己定义数据类型。只不过,Pandas里面又定义了两种数据类型:Series和DataFrame,它们让数据操作更简单了。
Python Tutor Python Tutor是由Philip Guo开发的一个免费教育工具,可帮助学生攻克编程学习中的基础障碍,理解每一行源代码在程序执行时在计算机中的过程。通过这个工具,教师或学生可以直接在Web浏览器中编写Python代码,并逐步可视化地运行程序。如果你不知道代码在内存中是如何运行的,不妨把它拷贝到Tutor里可视化执行一遍,加深理解。
地址:http://www.pythontutor.com/
8.Jupyter Notebook
Jupyter Notebook就像一个草稿本,能将文本注释、数学方程、代码和可视化内容全部组合到一个易于共享的文档中,以Web页面的方式展示。它是数据分析、机器学习的必备工具。
地址:http://jupyter.org/
9.Anaconda
Python虽好,可总是会遇到各种包管理和Python版本问题,特别是Windows平台很多包无法正常安装,为了解决这些问题,Anoconda出现了,Anoconda包含了一个包管理工具和一个Python管理环境,同时附带了一大批常用数据科学包,也是数据分析的标配。
地址:https://www.anaconda.com/
10.Skulpt
Skulpt是一个用Javascript实现的在线Python执行环境,它可以让你轻松在浏览器中运行Python代码。使用skulpt结合CodeMirror编辑器即可实现一个基本的在线Python编辑和运行环境。
地址:http://www.skulpt.org/