分享PyCharm的几个使用技巧


Posted in Python onNovember 10, 2019

PyCharm是个十分强大的Python编辑器,笔者在日常的工作中学到了很多该IDE的使用技巧,有的是从别人那里学到的,有的是自己学习的。笔者深感自己的开发能力不足,因此希望能够将这些使用技巧记录下来,同时也把这些使用技巧分享给读者,希望能对读者有所帮助。

以下将介绍几个简单的PyCharm使用技巧。以Mac系统中的PyCharm使用为例。

自定义文件头

在实际的代码编写中,我们需要定义属于自己的文件头,比如脚本的创建时间、作者、编码等。在PyCharm中,我们可以一键定义,并与之后的脚本都会遵循该文件头的模式。

按如下操作进入自定义文件头设置模式:File --> Preferences(Windows系统为:Settings) --> Editor --> File and Code Template --> Python Script,这样我们就可以设置Python脚本的文件头了。

在设置的面板中,输入以下模板:

# -*- coding: utf-8 -*-
# author: Jclian91
# place: Pudong Shanghai
# time: ${time}
import os, re, json, traceback

if __name__ == '__main__':
  pass

接着,我们创建示例脚本a.py,脚本的截图如下:

分享PyCharm的几个使用技巧

这样,我们创建的Python脚本的文件头就起作用了,读者还可以设置其他文件格式的文件头,包括HTML,Python Unit Test等。

注释

在PyCharm中,选择未注释的多行代码,可使用CTRL+/键实现多行注释;选择已注释的多行代码,可使用CTRL+/键取消这多行代码中的注释。

在之前的a.py中去掉pass,增加代码如下:

lst = ['hello', ',', 'world', '!']
  hello_string = ''.join(lst)
  print(lst)

选中这三行代码,可使用CTRL+/键实现多行注释,再次按下CTRL+/键取消注释。如下图:

分享PyCharm的几个使用技巧

自动缩进

代码的自动缩进也是我们平时经常会用到的功能,比如我们在写代码的时候,需要将多行代码整体缩进,比如新增函数,比如增加判断语句等,这时候,我们使用自动缩进功能会帮助我们很多。

在刚才的a.py代码中,比如我们需要判断lst的长度是否大于3,并考虑输出。这时候可以使用自动缩进功能。使用方法:选择需要缩进的多行代码,并按下TAB键,可实现多行代码缩进;选择多行代码,并按下SHIFT+TAB键,可取消多行缩进。利用自动缩进,实现刚才的功能,如下图:

分享PyCharm的几个使用技巧

文件比对

在Linux系统中,我们可以利用diff命令来实现文本比对,这有助于我们发现两个文件的不同之处,在编码代码的时候很有益处。当然,在PyCharm中,我们也可以轻松地实现文本比对。

我们保持上述的a.py文本不变,创建b.py文件如下:

# -*- coding: utf-8 -*-
# author: Jclian91
# place: Pudong Shanghai
# time: 
import os, re, json, traceback

if __name__ == '__main__':
  lst = ['Hello', ',', 'World', '!']
  if len(lst) > 3:
    print(lst)
  else:
    print('length of lst is less than 4.')
    print('Hello World!')

那么,如何在PyCharm中实现文本比对呢?选择a.py,右击,选择Compare With...,再选择需要比对的文件b.py,这样就完成了文本比对,结果如下:

分享PyCharm的几个使用技巧

PyCharm是按行进行比对的,它帮助我们发现了三处不同之处,一处是文本不同,一处是删除,一处是新增。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
用实例解释Python中的继承和多态的概念
Apr 27 Python
python下setuptools的安装详解及No module named setuptools的解决方法
Jul 06 Python
基于使用paramiko执行远程linux主机命令(详解)
Oct 16 Python
python爬虫 使用真实浏览器打开网页的两种方法总结
Apr 21 Python
PyQt5 pyqt多线程操作入门
May 05 Python
Python退火算法在高次方程的应用
Jul 26 Python
python+openCV调用摄像头拍摄和处理图片的实现
Aug 06 Python
Python:合并两个numpy矩阵的实现
Dec 02 Python
Django 路由层URLconf的实现
Dec 30 Python
python GUI库图形界面开发之PyQt5中QWebEngineView内嵌网页与Python的数据交互传参详细方法实例
Feb 26 Python
Python调用接口合并Excel表代码实例
Mar 31 Python
Python代码覆盖率统计工具coverage.py用法详解
Nov 25 Python
Python单元测试与测试用例简析
Nov 09 #Python
python自动化测试之异常及日志操作实例分析
Nov 09 #Python
Python多线程模块Threading用法示例小结
Nov 09 #Python
Python for循环及基础用法详解
Nov 08 #Python
python常用排序算法的实现代码
Nov 08 #Python
python分布式编程实现过程解析
Nov 08 #Python
详解mac python+selenium+Chrome 简单案例
Nov 08 #Python
You might like
无线电波是什么?它是怎样传输的?
2021/03/01 无线电
如何写php程序?
2006/12/08 PHP
php的4种常见运行方式
2015/03/20 PHP
php parse_str() 函数的定义和用法
2016/05/23 PHP
php array_key_exists() 与 isset() 的区别
2016/10/24 PHP
游览器中javascript的执行过程(图文)
2012/05/20 Javascript
JS无限极树形菜单,json格式、数组格式通用示例
2013/07/30 Javascript
jQuery toggleClass应用实例(附效果图)
2014/04/06 Javascript
对 jQuery 中 data 方法的误解分析
2014/06/18 Javascript
javascript实现手机震动API代码
2015/08/05 Javascript
浅谈angular.js中实现双向绑定的方法$watch $digest $apply
2015/10/14 Javascript
jQuery validate插件submitHandler提交导致死循环解决方法
2016/01/21 Javascript
基于Javascript倒计时效果
2016/12/22 Javascript
使用vue-router为每个路由配置各自的title
2018/07/30 Javascript
基于Vue实现可以拖拽的树形表格实例详解
2018/10/18 Javascript
Vue封装的组件全局注册并引用
2019/07/24 Javascript
python发腾讯微博代码分享
2014/01/10 Python
Python实现将罗马数字转换成普通阿拉伯数字的方法
2017/04/19 Python
python生成随机图形验证码详解
2017/11/08 Python
django实现用户登陆功能详解
2017/12/11 Python
python实现简易通讯录修改版
2018/03/13 Python
python微信撤回监测代码
2019/04/29 Python
Django model select的多种用法详解
2019/07/16 Python
python中通过selenium简单操作及元素定位知识点总结
2019/09/10 Python
如何使用python3获取当前路径及os.path.dirname的使用
2019/12/13 Python
pycharm通过ssh连接远程服务器教程
2020/02/12 Python
python GUI库图形界面开发之PyQt5窗口布局控件QStackedWidget详细使用方法
2020/02/27 Python
详解pandas绘制矩阵散点图(scatter_matrix)的方法
2020/04/23 Python
动物学专业毕业生求职信
2013/10/11 职场文书
《金色的脚印》教后反思
2014/04/23 职场文书
大学生实习介绍信
2015/05/05 职场文书
学生会工作感言
2015/08/07 职场文书
制定企业培训计划的五大要点!
2019/07/10 职场文书
OpenCV-Python 实现两张图片自动拼接成全景图
2021/06/11 Python
Java面试题冲刺第十九天--数据库(4)
2021/08/07 Java/Android
Win11任务栏无法正常显示 资源管理器不停重启的解决方法
2022/07/07 数码科技