开始使用pycharm了
我将python的主力开发工具从eclipse+pydev切换到pycharm社区版了.
选择pycharm 的原因:
1. pycharm可以实时按照pep8的规范检查code style和naming rules, 尤其是naming rules(类名/方法名/attr名/文件名), 这个我非常看重.
python 标准库和第三方库的命名规范不太统一, 我还在慢慢习惯python的命名风格, 所以pycharm这一功能可以强制我的代码保持一个风格. (我其实还是比较喜欢C#/Delphi的命名规范)
2. pycharm可以做code inspection, 不仅仅是python代码, html也可以. 这个很赞, pydev只能检查python代码.
3. pycharm 还有个很赞的功能, 能列出virtual env 中已经安装的包, 能显示安装包的版本和当前最新的版本, 这样比较好确定需要升级哪些包.
调教点:
1. Appearance 使用Windows风格, 我非常不习惯菜单项也是dark的样子, 只需要editor是dark即可.
2. KeyMap 使用 eclipse 风格
3. plugins: 禁用所有VCS类的插件, 我不习惯在IDE中做版本控制. 安装2个插件, codeglance 和 string manipulation
4. Editor 中开启Line number
5. Show method sparators, editor会用一个长线来分割方法, 很醒目, 很赞.
6. Editor 中关闭soft wraps
7. Editor 字体选用 雅黑
8. Editor 安装Obsidian color schema, 从github搜索下载
9. Editor inspections 中关闭 spelling/typo检查
10. Inspections的PEP8 coding style violation中Ignore errors中, 添加 E303, 即不对空白行行数做限制
安装Plugin:
我只安装了2个插件:
CodeGlance, 为Editor提供minibar
String Manipulation, 提供丰富的字符串处理功能
提升工作效率的快捷键:
Search symbols, 重新定义快捷键: Ctrl+Shift+S
Search resource, 快捷键 Ctrl+Shift+V
Search class, 快捷键 Ctrl+Shift+T
Search everywhere, 重新定义快捷键: Ctrl+Shift+L
Find in path, 多文件范围的查找, Ctrl+H
Reformat code, 快捷键 Ctrl+Alt+L
优化 pycharm
pycharm 打开太慢了, 有一次打开一个项目全过程居然需要近10分钟, 网上找到个优化帖子, http://www.oschina.net/question/179574_29497. 我这边测试该贴真心管用, 速度提升非常明显(约提升10倍), JVM 调优真有学问啊.
我用的 pycharm 4.5, 它自带的jre 8. 所以没有按照帖子改到jre 7. 只是修改了 pycharm.exe.vmoptions 内容.
我的内存是 3GB, 机械硬盘.
修改后 pycharm.exe.vmoptions 的内容为: 最重要的是Xmx, 比较苦逼的是, 内存太小了, 不得已找了一大堆优化参数, 当然效果肯定比不上加内存条.
-server
-ea
-Xverify:none
-Xms256m
-Xss16m
-Xmx1152m
-XX:MaxPermSize=256m
-XX:ReservedCodeCacheSize=128m
-XX:+UseG1GC
-XX:G1ReservePercent=20
-XX:MaxGCPauseMillis=120
-XX:MaxHeapFreeRatio=70
-XX:+AggressiveOpts
-XX:+UseCodeCacheFlushing
-XX:+BackgroundCompilation
-XX:+EliminateLocks
-XX:+DoEscapeAnalysis
-XX:+BindGCTaskThreadsToCPUs
-XX:GCTimeRatio=1
-XX:BiasedLockingStartupDelay=0
-XX:+UseFastAccessorMethods
-XX:+UseFastEmptyMethods
-XX:+UseFastJNIAccessors
-XX:+OptimizeStringConcat
-XX:+UseStringCache
-XX:+UseStringDeduplication
-XX:+UseTLAB
-XX:+ResizeTLAB
-XX:+UseAdaptiveGCBoundary
-XX:+UseAdaptiveSizePolicy
-Djdk.map.althashing.threshold=0
-Dsun.awt.keepWorkingSetOnMinimize=true
-Djava.net.preferIPv4Stack=true
下面是之前用过的一个优化设置:
-server
-Xms512m
-Xmx768m
-XX:MaxPermSize=300m
-XX:ReservedCodeCacheSize=256m
-Xverify:none
-XX:+UseCodeCacheFlushing
-XX:+UseConcMarkSweepGC
-XX:SoftRefLRUPolicyMSPerMB=50
-XX:+AggressiveOpts
-XX:+CMSClassUnloadingEnabled
-XX:+CMSIncrementalMode
-XX:+CMSIncrementalPacing
-XX:CMSIncrementalDutyCycleMin=0
-XX:-TraceClassUnloading
-XX:+TieredCompilation
-Dsun.awt.keepWorkingSetOnMinimize=true
-Djava.net.preferIPv4Stack=true
下面是之前用过的另一个优化设置:
-Xms512m
-Xmx768m
-XX:MaxPermSize=300m
-server
-Xverify:none
-XX:+UseG1GC
-XX:MaxGCPauseMillis=12
-XX:MaxHeapFreeRatio=70
-XX:+CMSIncrementalPacing
-Dsun.awt.keepWorkingSetOnMinimize=true
-Djava.net.preferIPv4Stack=true
其他亮点和资源:
1. PyCharm也支持C#的代码自定义折叠写法,
#region Description
Your code goes here...
#endregion
2. pep8的详细参数见, http://pep8.readthedocs.org/en/latest/intro.html
3. 博客 How to Get Started with PyCharm and Have a Productive Python IDE : http://pedrokroger.net/getting-started-pycharm-python-ide/
开始使用pycharm了的更多相关文章
- git和pycharm管理代码
首先明白三个概念,服务器代码库,本地代码库,和正在coding的项目. coding完毕后,先通过commit提交到本地代码库,然后通过push再提交server的代码库 git步骤 git c ...
- 通过pycharm使用git[图文详解]
前言 使用git+pycharm有一段时间了,算是稍有点心得,这边整理一下,可能有的方法不是最优,欢迎交流,可能还是习惯敲命令去使用git,不过其实pycharm已经帮忙做了很多了,我们可以不用记住那 ...
- pycharm连接mysql数据库
新的环境配置pycharm的项目时,发现pycharm不能连接到mysql数据库.由于安了java环境但是还没配置相关的库,并且jetbrains家的IDE一般都是java写的,于是猜想可能是java ...
- PyCharm断点调试django
我在用PyCharm开发django程序的时候,对于打印日志调试程序的方式感觉还是有点麻烦和不直观,所以研究了一下断点调试的方法如下: 1.打开你的工程,在菜单栏里找到Run-->Edit Co ...
- Django基础,Day1 - 环境安装与pycharm创建django项目
Django是一个高级Python Web框架,支持快速部署,清理和实用的设计.它可以被轻易部署和提供实用的组件,而开发人员只需要专注于写自己的应用程序,而不需要重复造轮子.并且Django是自由和开 ...
- py-faster-rcnn搭配pycharm使用
先在ubuntu下配置好cuda.cudnn以及py-faster-rcnn,然后安装pycharm. 打开pycharm看py-faster-rcnn代码,import处各种红色下划曲线,提示报错. ...
- Ubuntu学习总结-09 安装 Pycharm
一 下载 PyCharm 从以下网址下载Linux版本的Pycharm,这里使用的版本是pycharm-professional-2016.2.3.tar.gz . http://www.jetbra ...
- pycharm快捷键及一些常用设置
pycharm快捷键及一些常用设置,有需要的朋友可以参考下. Alt+Enter 自动添加包 Ctrl+t SVN更新 Ctrl+k SVN提交 Ctrl + / 注释(取消注释)选择的行 Ctrl+ ...
- pycharm svn服务器访问不了的问题。
昨天使用pycharm访问svn服务器的时候一直登陆不上. 总结一下遇到的svn的问题. 1.用户名密码错误.简单致命, 2.svn访问权限,这个是svn服务器那边可以设置的. 3.svn路径拼写错误 ...
- ubuntu pycharm 无法 lock from launcher 问题解决
ubuntu pycharm 无法 lock from launcher 问题解决 最近在自己电脑上安装了python的IDE pycharm, 发现在dash也无法搜索到pycharm的启动图标.( ...
随机推荐
- Android成长日记-Activity
① Activity是一个应用程序组件,提供用户与程序交互的界面 ② Android四大组件 ---Activity ---Service ---BroadcastReceiver ---Conten ...
- hdu1402 FFT入门
参考这里:http://www.cnblogs.com/pdev/p/4354705.html http://www.cnblogs.com/pdev/p/4354629.html 题意:求大数乘法 ...
- SPOJ GSS5 Can you answer these queries V
Time Limit: 132MS Memory Limit: 1572864KB 64bit IO Format: %lld & %llu Description You are g ...
- [NOIP2015] 提高组 洛谷P2679 子串
题目背景 无 题目描述 有两个仅包含小写英文字母的字符串 A 和 B.现在要从字符串 A 中取出 k 个互不重叠的非空子串,然后把这 k 个子串按照其在字符串 A 中出现的顺序依次连接起来得到一 个新 ...
- [JavaEE]调用Restful Service 出现415 Unsupported Media Type的问题(Rest Request Header中的Content-Type问题)
用Chrome的插件Simple REST Client 调用POST的REST服务时,老是报415错误,如图. 一开始就以为是服务端的问题,各种google,百度,折腾了一下午未果. 晚上继续看,一 ...
- Mysql和Memcached的连动
Memcached 和 mysqld 的联通 一 概述: what's UDFs ? UDFs是User Defined Functions的缩写,表示Mysql用户自定义的函数,应用程序可以利用这些 ...
- String.format()用法
package junit.test; import java.util.Date; import java.util.Locale; import org.junit.Test; pub ...
- HTML5预学习 长期更新
HTML5 仍处于完善之中. 为 HTML5 建立的一些规则: 新特性应该基于 HTML.CSS.DOM 以及 JavaScript. 减少对外部插件的需求(比如 ...
- AngularJs:String类型和JSON相互转换
最近一周做了一个页面,制作的过程中遇到各种问题,从中可以看出本人的js基础还不够扎实,angularjs也只是刚入门的水平,现在将制作过程中遇到的问题一一汇总,方便以后查阅. 一.String类型和J ...
- JQuery------$.getJSON()方法的使用
html(../Home/Index.cshtml) <body> <button class="Btn">按钮</button> </b ...