PyCharm 使用心得分享与技巧总结

前言

PyCharm 是大 JB 旗下的产品之一,对于广大 Python 开发者来说应该不会陌生,对于个人开发者来说用什么 IDE(VIM/Sublime Text/Visual Studio Code)可能并不重要,但是面对一个开发素质参差不齐的团队时,我相信老老实实统一使用 PyCharm 会是一个虽然大但是全的不错选择,因为一开始就开启 pep8 和 pylint 检测能显著提升代码质量,各种错误和警告提示会逼着你写出高质量的代码。当然统一编码和注释风格,小团队做一些适度的 code review 和单元测试会帮助团队一起更快的成长,良好的代码有时候靠的是自律、规范和 review,而不仅仅是技术。

"我不是个伟大的程序员,我只是个有着一些优秀习惯的好程序员" | By Kent Beck

PyCharm - Python IDE for Professional Developers by JetBrains.

更新记录

2017 年 08 月 25 日 - 初稿

阅读原文 - https://wsgzao.github.io/post/pycharm/

扩展阅读

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

购买和使用

JetBrains 的产品大多数是付费形式,但是对于教育行业却实行免费授权计划,几乎涵盖所有产品,十分良心。

学生授权申请方式

https://sales.jetbrains.com/hc/zh-cn/articles/207154369-%E5%AD%A6%E7%94%9F%E6%8E%88%E6%9D%83%E7%94%B3%E8%AF%B7%E6%96%B9%E5%BC%8F

如果已经有一定经济能力请支持正版

基本配置

以下设置选项随着版本调整可能发生位置变化,但可以在 Settings(Ctrl+Alt+S)左上角的搜索栏里快速进行查询

字体调整

默认的字体个人觉得偏小,File-->Settings-->Editor-->Font,新版本不必像老版本一样调整前必须要保持一个新的 Scheme,直接修改你喜欢的字体和大小应用就可以看到效果了

显示行号

File-->Settings-->Editor-->General-->Appearance里勾选 Show line numbers

皮肤主题与编辑器主题

皮肤主题和编辑器主题是分开设置的

皮肤主题在File-->Settings-->Appearance & Behavior-->Appearance的 Theme 选项下选择

编辑器主题在File-->Settings-->Editor-->Colors Scheme的 Scheme 选项下选择

自动生成文件头

默认情况下,新建完一个文件后,PyCharm 会生成一个__author__ = '$USER'的文件头,但通常每个 Python 文件都会添加# -*- coding: utf-8 -*-来控制编码。可以在File-->Settings-->File and Code Templates中的 Templates 选中 Python Script 在右侧把你要自动添加的内容加进去

# -*- coding: utf-8 -*-
# __author__ = 'wangao'

常用快捷键

温馨提示:PyCharm 会实时自动保存代码并写入本地文件

Ctrl + / 行注释,可以批量选择和取消

快速按 2 次 Shift 全局文件名称查找,可以快速定位所要编辑的文件

Ctrl + F 当前文件查找

Ctrl + R 当前文件替换

Ctrl + Shift + F 全局查找,可能会和输入法的简繁快捷键冲突,记得关闭

Ctrl + Shift + R 全局替换

Ctrl + Z 撤销

Ctrl + Shift + Z 回撤

使用技巧

未完待续

参考文献

@陈俊岭 把 Pycharm 官方帮助文档翻译了一遍,如果英文不好可以适度参考

我的 Pycharm,我做主 - http://blog.csdn.net/u013088062/article/details/50388329


PyCharm 使用心得分享与技巧总结

23 回复

ctrl+alt+L :代码自动整洁


PyCharm确实是个强大的IDE,我用下来感觉最爽的几个点:

  1. 智能补全和代码分析是真省心,写Python时类型推断很准,还能直接提示库函数用法
  2. 调试器集成做得不错,断点、变量查看都很直观,比命令行调试舒服多了
  3. 项目导航用快捷键跳转特别快,Ctrl+鼠标点击直接进函数定义
  4. 版本控制内置了Git操作,提交、对比差异不用切出去

个人觉得最实用的技巧:

  • 多用Alt+Enter快速修复导入和代码问题
  • 善用Shift+Shift全局搜索,找文件找代码片段都很快
  • 本地历史功能救过我好几次,误删了能找回

插件方面推荐Rainbow BracketsCodeGlance,前者让括号配对更清晰,后者在编辑器右边加个迷你地图。

总结:熟练使用快捷键能极大提升编码效率。

有时候还是觉得自己一开始写的格式顺眼

哈哈哈. 好巧, 我也总结过一些快捷键:
https://changchen.me/blog/20170607/pycharm-shortcut/

这个翻译也是 nb 了

我用 python.exe -mpip install pyodbc 安装了一个新的包,然后在 PyCharm 里就不会提示包里的符号,这个怎么让它扫描一遍刷新一下?

表示 python 的缩进好难弄,其他语言写的多乱,ctrl+alt+L 都会整理好,python 就不行了

大 PyCharm 的本地历史保留,就了我一命,必须支持

瞎 B 乱用 git reset --hard HEAD

😓

已订阅 JB 全家桶,尽情享用全部 JB。

快捷键都是那几个常用的快捷键,IdeaVim 才是神器。

Pycharm 支持类型推断哦,给点类型提示,写代码爽歪歪

pycharm ctrl Alt L 也是一样格式化的效果,为啥说不行

不是说 pycharm 的格式化不行,是我不习惯 python 的缩进,比如要在某段代码添加个 if 语句,我需要把这段代码全部缩进,然后加 if。其他对缩进不敏感的语言直接上面加个 if (){,尾部加个},直接 ctrl+alt+L

mark 一下常用快捷键。

😂不习惯没办法。

Format 真的要命,各 IDE 都不一样,NetBeans, Eclispe, IDEA, 经常用混掉。

本地历史这个真是太赞了。

而且 jB 全家桶统一的插件系统、统一的用户体验这点也是赞到不行

论 IDE,JB 现在真的有一桶浆糊的气势了

左上角那个圆的箭头 Synchronize 同步应该就可以,实在不行重启清空缓存,再没有的话就是包的问题了

custom vm option:
-Xms1024m
-Xmx2048m
-Xbootclasspath/a:…/lib/boot.jar
-XX:ReservedCodeCacheSize=256m
-XX:+UseCompressedOops
-XX:+AggressiveOpts
-XX:+UseG1GC
-XX:+AlwaysPreTouch
-Dide.no.platform.update=true
懂的话就拿去用,充分利用系统资源,减少卡顿

入门 Python 就是从 pycharm 开始的。



这个优化配置之前官网也没有见到,因为内外网隔离,我们内网开发环境是基于 VMware Horizon View 的零客户机,缺少 GPU 的支持确实会卡顿,像 MS Office 必须关闭图形化硬件加速,而且因为 SMB 安全漏洞统一转为 SFTP Net Drive 网络 SSH 协议映射( PyCharm 文件索引和回写磁盘会有延迟),通过 virtualenvwrapper 和 Gitlab 来实现单元测试,code review 等 CI 协作。

请问您的配置具体如何实现,是否可以解决部分卡顿问题呢?

举个类型推断的例子呀谢谢

顺便再安利下我用的语法配色
https://www.v2ex.com/t/385417

你这这些问题,我只能说能解决一部分,但是不能根本解决,毕竟你的 IO 差,怎么调优也没办法啊。我这配置是 JVM 的参数调优,主要是增大 Heap 以及使用 G1 的垃圾回收算法,以起到缩小 STOP THE WORLD 的时间。当然如果你的内存很大,我觉得你可以调高 heap,然后关闭自动保存,有一定的成效。Pycharm 对 GPU 这方面要求应该不高,毕竟 openjdk 的光栅化都不如 oracle jdk。现在都改用 openjdk 了,使用起来也没什么影响。你的 IO 差大概只能寄托于你们系统管理员了吧。

最近刚发现的一个功能:Bookmark
在光标所在行建立书签:ctrl + F11, 删除 :F11
查看所有书签位置:shift + F11
参考: https://www.jetbrains.com/help/pycharm/managing-bookmarks.html

回到顶部