最强的 PythonIDE -- PyCharm

(自翻,有些地方拿捏不好用词多见谅。原文点此)
最强的 PythonIDE -- PyCharm
====


学习新语言的时候一个好的 IDE 就是一个好老师,应该积极地去使用。

因此,介绍一下 Python 的最好的 IDE Pycharm,以使用最多的Django Web 开发为例。

性能和价格体系等是2015年12月15日的 PyCharm 5.0.2 时的数据。

概要


https://www.jetbrains.com/pycharm/

PyCharm 是以高品质的 IDE 而有名的捷克JetBrains s.r.o. 出品的面向 Python 的 IDE。可以在 Windows/OS X/Linux 上使用。

JetBrains的 IDE 是以 JAVA 的 IDE IntelliJ IDEA 为基础,PyCharm 是为了增强 Python 而开发的。另外还有 Ruby,PHP,JS,C++,Objective-C/Swift等IDE。

PyCharm同时还附带了 JS,CSS,HTML 等 Web 开发相关联的组件,可以在同一个环境下开发项目。

价格


PyCharm 有收费的 Professional Edition 和免费的 Community Edition。

Community Edition 的 Python 解析机能是相同的,但是省去了前述的 Web 开发相关联的组件和对应 WebApplicationFramework的 DB、SQL 等。

若想进行 Web 开发还是推荐使用 Professional Edition。

30日的免费试用时间可以尝试一下。

价格体系


JetBrains 的产品分为按月/年付费,第一年的价格最高,继续使用的话收费逐渐降低,3年以后降到相同的价格。

购买页面有只含有 PyCharm 的购买方案和包括了 IntelliJ IDEA Ultimate 等其他语言 IDE 的 Products Packs购买方案两种。

PyCharm 包括了 Web 相关的机能不需要再购买 WebStorm。

安装


https://www.jetbrains.com/pycharm/download/
在这里可以下载到各平台的镜像。

然后按照指示就可以安装了。OS X 版同捆了 Java。

项目


最强的 PythonIDE -- PyCharm_第1张图片

PyCharm以 project 为单位来管理代码。

从开始菜单可以新建项目,读取现有代码和从 git 等 VCS 中读取。

之后,介绍相关的项目设定,和一些推荐功能。

virtualenv 管理

Python 使用 virtualenv 把开发环境分开的情况很多,可以在设定中新建新环境和设定。

新建项目时可以在Preferences -> Project -> Project Interpreter 中指定现有 virtualenv 环境和新建。

可以看见所有已安装的库,有更新的库也可以全部选择很方便。

最强的 PythonIDE -- PyCharm_第2张图片

把 PEP8警告提高到 waring

Python的标准编码规定 PEP8违反的警告优先度很低,最好提高一级到 warning。看见让人不舒服的 违反PEP8的代码没什么好处吧。

从Preferences -> Editor -> Inspections 内的 Python -> PEP8 coding style violation ,把 week warning 上调到 warning。

下面的naming conversion violation 也一同上调。

最强的 PythonIDE -- PyCharm_第3张图片

变更文件编码描述

Python 文件的编码若是 ascii 以外的话需要在文件开头注明。

在Preferences -> Editor -> Inspections 内的 Python -> File contains non-ASCII character 里,把 Encoding comment format 设定成你喜欢的编码。

注释的部分因为需要写日语,所以还是设定为全文件的默认状态吧。

最强的 PythonIDE -- PyCharm_第4张图片

** Project Structure **

可以添加搜索地址和 Template、图片的寻找地址。

代码补全出不来和 Template 跳转不行的时候确认一下。

** Django Setting **

可以指定使用Django的时候 Setinng 的位置和 Django Project 的位置。

最强的 PythonIDE -- PyCharm_第5张图片

** Docstring format **

Docstring 使用的格式。
在注释中使用 type hinting的时候有作用。
选择了reStructured的话应该没问题了。

最强的 PythonIDE -- PyCharm_第6张图片

** VGS **

Git, Mercurial, Subversion等 VGS。
编辑里可以确认设定和变更,进行部分还原。

设定git submodule和 Project 外的 VCS的路径时,也可以在这里追加。

** 显示行号、空格 **

在Preferences -> Editor -> General -> Appearance设定。

PyCharm 的搜索功能十分强大,左上的搜索框内输入就能显示出来。

最强的 PythonIDE -- PyCharm_第7张图片

** 文件模板 **

指定新建文件的模板。

Preferences -> Editor -> File and Code Templates

Python 2.x 使用的时候加上以下的两点。

absolute_import Python2.x 使用相对路径会导致混乱,请只使用绝对路径。想使用相对路径的时候需要明确的表述,用了这个就可以免去烦恼。Python3.x 时为默认状态。

unicode_literals 默认设定为 unicode。说明原因的话会很长,这里也设定为和 Python3.x 一样就不会有混乱了。

from __future__ import absolute_import
from __future__ import unicode_literals
最强的 PythonIDE -- PyCharm_第8张图片

** (写不同版本的 Python 代码的时候) **

Preferences -> Editor -> Inspections 内的 Python -> Code compatibility inspection 的验证对象设定为多种版本。

开发库时很有作用。

写2.x 系的代码的时候,可以很好的和3.4以上版本的代码一起写。

功能介绍


Search everywhere


按两下 Shift 可以使用搜索。

文件名、symbol、action 等 Project 相关的基本都可以搜索。

不区分模块名和文件名的大小写、下划线。

最强的 PythonIDE -- PyCharm_第9张图片

代码解析


对定义使用Cmd + 单击和快捷键可以跳转。

可以直接跳转到库中,对方法和参数有疑问的时候可以轻松解决。

对函数操作的时候,不特定也会将其中包括的方法在候补栏中表示出来。

ToolWindow 中的 Project 和 Structure的设定可以和 editor 同时设定。

右上的齿轮标记可以选择以下操作。

  • Auto Scroll to code
    ToolWindow 中选择的文件会在 editor 中表示。
  • Auto scroll from code
    editor中选择的文件会在 ToolWindow 中表示。

按个人喜好设定就行。

顺便一提,editor 上部会显示出正在处理文件的路径,写路径的时候可以参照。

最强的 PythonIDE -- PyCharm_第10张图片

代码补全


一般情况的代码都可以补全。

而且和 Serarche everywhere 同样,模块名后面一大半都可以补全。

老实说真是很强大。

另外即使不去 import 也可以使用,类、函数名不记得了的时候使用 Alt+Enter 选择候补后会自动写入 import 代码。

出现警告的地方按 Alt+Enter出来的菜单里也有许多功能。

  • 单双引号转换
  • 根据上下文自动补全,比如:
    • import
    • 函数、类、参数定义
    • 库的安装
    • docstring
    • test
  • 表现形式变更。 tuple -> list 或者 {} -> dict()
最强的 PythonIDE -- PyCharm_第11张图片

TypeHinting


最近随着Python3.5而火起来的 TypeHinting。

PyCharm在几年前通过注释实现TypeHinting的功能,即使不是 Python3.5也可以使用实现代码补全和重构。

没有变量类型的信息也可以通过 TypeHinting 来补全,使得能看到变量类型错误。

TypeHinting 相关的内容,使用 PyCharm 来表示的语法,请参照以下链接。

https://www.jetbrains.com/pycharm/help/type-hinting-in-pycharm.html

连接Database


MySQL 等 RDB 的连接,数据阅览操作都可以在 GUI中完成。

Django/SQL Alchemy


可以Django/SQL Alchemy的 ORM 的补全。

内部实装的参数操作过多,单纯静态代码解析来补全很困难,可以跳转到补全和定义的位置。

Template & HTML & JS


从 View 可以直接移动到 Template,也可以HTML/CSS/JS 的补全。Template 间的依存关系和图片的路径也能很好解析。

TypeScript 和 CoffeeScript的功能也具备, 没写 server site 的客户端PyCharm 也能发挥作用。

最强的 PythonIDE -- PyCharm_第12张图片
最强的 PythonIDE -- PyCharm_第13张图片

Debug


PyCharm 带有 debug 功能,单步执行、端点设置、停止后改变变量、Watch 等,一般 debug 的功能基本都可以做到。

Template 内的 debug 也可以捕捉到,当然也可以单步执行。

Template内的回溯很难看见,处理复杂的 Template 时很有用。

Remote Debug


可以使用 ssh 连接远程 debug。

在调查环境特有的问题时可以发挥作用。

其他还有很多


功能多到说不完,代码补全是最好用的,一开始先用这些基本功能够不用去构建环境是推荐使用 PyCharm 的最大理由。

你可能感兴趣的:(最强的 PythonIDE -- PyCharm)