【python技能树】强推10款Python常用的开发工具
要熟练使用python解决各种问题,开发工具必不可少,其中就包括IDE或者代码编辑器,或者集成的开发编辑器(IDE),一个好的开发工具可以让你事半功倍,接下来主要介绍python的一些常用的开发工具。
1 IDLE:Python自带的IDE工具
IDLE(Integrated Development and Learning Environment),集成开发和学习环境,是Python的集成开发环境,纯 Python 下使用 Tkinter
编写的IDE。
- 支持平台:Windows, macOS, Linux
- 适合人群:初学者
- 支持语言:Python
- 下载:https://www.python.org/downloads/
IDLE提供了一些针对初学者非常友好的功能,例如:
- 语法高亮
- 多窗口文本编辑器
- 程序动画或步进(指一次执行一行代码)
- 段落缩进
- TABLE键控制
- 断点可用于简化调试
- 调用堆栈清晰可见
2 IPython:交互式计算系统
IPython主要包含三个组件:增加的交互式 “Python shell”,解耦的双过程通信模型,交互式并行计算的架构。可以实现并行化计算,同时支持变量自动补全。使用In [x]
和Out [x]
表示输入输出
IPython提供以下交互性功能:
- 代码着色
- 变量自动补全,自动缩进
- 支持 bash shell 命令
- 强大的交互式 shell
- Jupyter 内核
- 交互式的数据可视化工具
- 灵活、可嵌入的解释器
- 易于使用,高性能的并行计算工具
- 使用
%run
命令运行脚本 - 使用
%timeit
命令快速测量时间 - 使用
%pdb
命令快速debug
IPython支持Python2.7版本或者3.3以上的版本,通过以下命令安装IPython:
pip install ipython
3 PyCharm:JetBrains打造的Python IDE
PyCharm是一个跨平台的全功能Python开发工具,是由JetBrains打造的一款Python IDE (Integrated Development Environment,集成开发环境)。它有两个版本,一个是免费的社区版本,另一个是面向企业开发者的更先进的专业版本。
Pycharm是程序员常使用的开发工具,简单、易用,并且能够设置不同的主题模式。它还能与IPython notebook进行集成,并支持Anaconda及其他的科学计算包,比如matplotlib和NumPy。同时它支持很多的第三方web开发框架,比如Django、 Pyramid、web2py、google app engine 和 Flask
PyCharm具有一些可以帮助开发者提高效率的工具,比如智能代码补全、调试、语法高亮、项目管理与导航、代码跳转、智能提示、图形化的调试器和运行器、自动完成、单元测试、版本控制、遵循PEP8规范的代码质量检查、智能重构等。
- 支持平台:Windows、Mac 或 Linux 版本
- 下载:PyCharm: the Python IDE for Professional Developers by JetBrains
- PyCharm社区版本下载
主要功能包括:
- 代码分析与辅助功能,拥有补全代码、高亮语法和错误提示,支持代码折叠和分割窗口;
- 项目和代码导航:专门的项目视图,文件结构视图和和文件、类、方法和用例的快速跳转;
- 重构:包括重新命名,提取方法/超类,导入域/变量/常量、pull,push等;
- 支持Web框架: Django、Pyramid、web2py、google app engine和Flask;
- 集成Python调试器;
- 集成单元测试,按行覆盖代码;
- Google App Engine下的Python开发;
- 集成版本控制系统:为Mercurial,Git, Subversion, Perforce 和 CVS提供统一的用户界面,拥有修改以及合并功能;
- PyCharm 配备了 1000 多个插件,程序员也可以编写自己的插件来扩展其功能
4 Spyder:开源的python集成开发环境
Spyder Python是一个开源的python集成开发环境,非常适合用来进行科学计算方面的python开发,是用python开发的轻量级软件,遵循MIT协议,可免费使用。
- 支持平台:Windows, macOS, Linux
- 适合人群:数据科学开发者
- 下载:Home — Spyder IDE
Spyder有一个Editor(编辑器)用于编写代码,Console(控制台)可以评估代码并且在任何时候都可以看到运行结果,Variable Explorer(变量管理器)可以查看代码中定义的变量。
Spyder python的基本功能包括:
- 多语言编辑器:具有函数/类浏览器的多语言编辑器,代码分析功能(目前支持pyflakes和pylint),代码完成,水平和垂直分割以及goto定义;
- 交互式控制台:Python或IPython控制台具有工作空间和调试支持,还带有Matplotlib数字集成;
- 文件查看:显示在编辑器或控制台中进行的任何类或函数调用的文档;
- variable explorer(变量探索器): 浏览在执行文件期间创建的变量
- 文件查找:支持正则表达式;
- 文件管理;
- 可以作为PyQT的扩展库,可以嵌入到PyQT的应用中。
5 Jupyter:开源IDE,IPython的衍生品
Jupyter是一款开源IDE,IPython的衍生品,它的名字来自Julia、python、R三种语言的组合,主要是用来做数据科学。
Jupyter家族有Jupyter Notebook、Jupyter Lab、Jupyter Hub三大产品,前两者都是基于Web的交互式计算环境,Hub是服务器端的应用。
- 支持浏览器:Chrome, Firefox, Safari等
- 适合人群:所有人
- 下载:Project Jupyter | Home
Jupyter Notebook 的本质是一个 Web 应用程序,便于创建和共享程序文档,支持实时代码,数学方程,可视化和 markdown。 用途包括:数据清理和转换,数值模拟,统计建模,机器学习等。
Windows打开Jupyter Notebook的方法:
Win + R
打开运行窗口,输入Jupyter Notebook,回车,就会默认在本地8888端口启动一个web服务,并自动打开浏览器,打开http://localhost:8888/tree
页面,在这个页面可以看到当前目录下的所有文件夹以及ipynb
文件。
6 Anaconda:python数据科学平台(包管理)
Anaconda是一款python数据科学平台,安装它后就默认安装了python、IPython、集成开发环境Spyder和众多的包和模块。Anaconda包含了conda、Python在内的超过180个科学包及其依赖项,比如:numpy、pandas、TensorFlow、scipy等。
- 下载:Anaconda | Anaconda Distribution
- github上anaconda开发平台:Anaconda-Platform · GitHub
7 PTVS:github上的开源项目
PTVS (Python Tools for Visual Studio)在 IronPython Tools for Visual Studio的代码基础上进行了增强并添加了对Cython、集群的支持,以及诸如Numpy和Scipy这样的新模块。
PTVS的主要特性包括:CPython、IronPython、Jython和PyPy;高级编辑功能如IntelliSense;多重构;内置REPL(read-eval-print loop)窗口;调试和分析功能等。
- 类型:代码编辑器&轻量级IDE
- 支持平台:Windows, macOS, Linux
- 适合人群:初、中阶开发人群
- 支持语言:Python、Java等绝大部分语言
- 下载:Download Visual Studio Code - Mac, Linux, Windows
- https://microsoft.github.io/PTVS/
Visual Studio Code(简称VS Code)是微软开发的免费代码编辑器,内置对JavaScript, TypeScript和Node.js的支持,还可以通过丰富的拓展支持 C++, C#, Java, Python, PHP, Go等语言的开发。通过安装Python插件,VS Code可以变身为一款轻量级的Python IDE,具有丰富的功能,包括代码高亮、自动补全、debug、调试、单元测试、notebook集成、网站开发等。
8 Eclipse + Pydev:跨平台的自由集成开发环境
Eclipse 是非常流行的 IDE,Eclipse with Pydev 允许开发者创建有用和交互式的 Web 应用。Pydev是一个运行在eclipse上的开源插件,PyDev 是 Eclipse 开发 Python 的 IDE,支持 Python,Jython和 IronPython 的开发。
- 支持平台:Windows, macOS, Linux
- 适合人群:中、高阶开发人群
- 支持语言:Python
- 下载:Download,PyDev
PyDev 具有许多功能,包括:
- Django集成
- 自动代码补全
- 多语言支持
- 集成的Python调试
- 代码分析
- 代码模板
- 智能缩进
- 括号匹配
- 错误标记
- 源代码控制集成
- 代码折叠
- UML编辑和查看
- 单元测试整合
支持 Python 2.x 和 3.x 语法
9 Eric:集成项目管理功能的 Python 集成开发环境
Eric是一个开源python代码编辑器和集成开发环境,遵循GPL协议,免费使用。它是纯python编写的,基于Qt GUI并集成了强大的Scintilla 编辑器功能。它提供了一个可靠的插件管理系统,可以通过插件来扩展功能。
Eric提供了所有的基础功能,比如调用提示、代码折叠、代码高亮、类浏览器、代码覆盖及分析等等。但是Eric的关键功能让它有了与其他商业python IDE竞争的能力:
- 集成的任务管理
- 单元测试支持 – 已集成
- 重构
- 正则表达式和Qt对话框核心插件
- 可选择的从编辑器中启动第三方应用程序
- 应用程序图
- 项目管理
- 交互式的Python shell
- 多语言用户界面,包括英语,德语,俄语,法语,捷克语,西班牙语,意大利语,土耳其语和中文
- 以插件的方式集成版本控制工具Subversion, Mercurial 和 Git
下载:The Eric Python IDE
英国肯特大学计算机学院提供的镜像网站进行下载:http://sourceforge.mirrorservice.org
PyQt: http://sourceforge.mirrorservice.org/p/py/pyqt/PyQt5/
Eric: http://sourceforge.mirrorservice.org/e/er/eric-ide/eric6/stable/17.04.1/
10 Sublime Text:跨平台的、轻量级的代码编辑器
Sublime- Text是一个用 C++ 和 Python 开发的跨平台 IDE。除了 Python 之外,它还提供对其他语言的支持。Sublime有自己的包管理器,开发者可以用来安装组件,插件和额外的样式。
- 支持平台:Windows、Linux、Mac OS 等操作系统
- 下载:sublime text 3 中文官网 - sublime text 1和sublime text 2中文版下载
- Sublime Text 使用手册:Sublime Text 使用手册_w3cschool
Sublime Text 的主要功能包括:
- 拼写检查
- 自动换行
- 深度整合GBK编码,可支持GBK编码文件
- 书签
- 完整的 Python API
- Goto 功能,即时项目切换,多选择,多窗口
- 随心所欲的跳转到任意文件的任意位置
- 右边没有滚动条,取而代之的是代码缩略图
- 多重选择(Multi-Selection)功能允许在页面中同时存在多个光标
- 支持VIM模式
新手比较推荐的是Pycharm、Jupyter Notebook,前者是目前最受欢迎的Python IDE,可以进行专业的python项目开发,功能极为全面,后者是一款基于Web的Python工作台,适合做数据分析、机器学习、可视化、教学演示,对新手非常友好。
【python技能树】强推10款Python常用的开发工具相关推荐
- 强推10款Python常用的开发工具
要熟练使用python解决各种问题,开发工具必不可少,其中就包括IDE或者代码编辑器,或者集成的开发编辑器(IDE),一个好的开发工具可以让你事半功倍,接下来主要介绍python的一些常用的开发工具. ...
- 10款常见常用的自动化测试工具推荐
当我们功能测试干的时间比较久了或者想要学习更多的技术,提升自己的时候,基本上第一时间就会想到的是自动化测试.而在自动化测试领域,自动化工具的核心地位毋庸置疑,自动化测试工具有哪些?下面为大家推荐10款 ...
- 10款优秀的HTML5开发工具
HTML5发展如火如荼,随着各大浏览器对HTML5技术支持的不断完善以及HTML5技术的不断成熟,未来HTML5必将改变我们创建Web应用程序的方式.今天这篇文章向大家推荐10款优秀的HTML5开发工 ...
- 10款交互设计原型开发工具(转)
所谓"工欲善其事,必先利其器",尽管小米加步枪可以也可以打败敌人,但如果朱棣有了坦克装甲部队,那岂不是更容易平定安南? 关于原型开发工具,各有各的使用习惯,有人喜欢axure.ph ...
- 10款交互设计原型开发工具
所谓"工欲善其事,必先利其器",尽管小米加步枪可以也可以打败敌人,但如果朱棣有了坦克装甲部队,那岂不是更容易平定安南? 关于原型开发工具,各有哥的使用习惯,有人喜欢axure.ph ...
- [转]10款交互设计原型开发工具
所谓"工欲善其事,必先利其器",尽管小米加步枪可以也可以打败敌人,但如果朱棣有了坦克装甲部队,那岂不是更容易平定安南? 关于原型开发工具,各有哥的使用习惯,有人喜欢axure.ph ...
- 简化工作流程,10款必备的HTML5开发工具
利用HTML5工具不仅可以帮助设计师和开发者创建更具吸引力的网站,还能增加网站的可用性和可访问性.本文收集了10款HTML5开发工具为你节省更多开发时间. 利用HTML5工具不仅可以帮助设计师和开发者 ...
- IntelliJ Idea 常用10款插件(提高开发效率)
转自:https://blog.csdn.net/weixin_41846320/article/details/82697818 Intellij IDEA 中一些很牛B 的插件:https://b ...
- Python 爬虫,推荐一款简单的抓包工具(续)
点击上方"AirPython",选择"加为星标" 第一时间关注 Python 原创干货! 1. 前言 上篇文章发布之后,有小伙伴后台私信我,说文章只涉及到手机端 ...
- 10 款最常用的Sketch在线插件!
Sketch 是一款高效.小巧的界面设计工具,在设计领域广受设计团队喜爱,帮助设计师创造了许多令人惊叹的作品.在使用 Sketch 时,辅助使用一些插件可以更高效地完成设计任务.Windows 也能用 ...
最新文章
- ssm 异常捕获 统一处理_SSM 统一异常处理
- excel粘贴时出现故障_了解这些信息,你会知道在ESXi5.0 的虚拟化系统下文件出现故障时,我们能做些什么?...
- Android 线程池概念及使用
- 东莞与华为共建国家新型智慧城市建设示范区
- python find
- ts可展开注释_Nike控告WL的始末,和它被TS带货后的几近成名
- What?一个 Dubbo 服务启动要两个小时!
- 使用matlab程序,基于标准卡标定感压纸的压力分布
- (数据分析三板斧)第一斧Numpy-第二节:生成数组、数组属性和切片
- 整数的素因子分解:Pollard rho method
- What's new in C# from 2.0 to 5.0
- swift——富文本文字的简单使用
- 安装SQLServer2008失败
- SpringBoot+Vue实现前后端分离的企业人事管理系统
- JVM菜鸟进阶高手之路十(基础知识开场白)
- C++11新特性——总结
- Eureka注册服务配置info-使用$project.artifactId$无法动态显示artifactId
- 暑假计算机培训心得体会,暑期培训心得体会模板集锦10篇
- 揭秘PLC(三)RTS之IO篇
- Libgdx播放Spine动画(2)-功能