分享PyCharm的几个使用技巧

yipeiwu_com6年前Python基础

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,脚本的截图如下:

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

注释

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

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

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

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

自动缩进

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

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

文件比对

在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是按行进行比对的,它帮助我们发现了三处不同之处,一处是文本不同,一处是删除,一处是新增。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

在Python程序中操作文件之flush()方法的使用教程

 flush()方法刷新内部缓冲区,像标准输入输出的fflush。这类似文件的对象,无操作。 Python关闭时自动刷新文件。但是可能要关闭任何文件之前刷新数据。 语法 以下是...

Python 类的魔法属性用法实例分析

本文实例讲述了Python 类的魔法属性用法。分享给大家供大家参考,具体如下: 魔法属性 无论人或事物往往都有不按套路出牌的情况,Python的类属性也是如此,存在着一些具有特殊含义的属...

Python基于回溯法子集树模板解决马踏棋盘问题示例

Python基于回溯法子集树模板解决马踏棋盘问题示例

本文实例讲述了Python基于回溯法子集树模板解决马踏棋盘问题。分享给大家供大家参考,具体如下: 问题 将马放到国际象棋的8*8棋盘board上的某个方格中,马按走棋规则进行移动,走遍棋...

python+splinter实现12306网站刷票并自动购票流程

通过python+splinter,实现在12306网站刷票并自动购票流程(无法自动识别验证码)。 此类程序只是提高了12306网站的 <查询> 刷新频率(默认自动查询的刷新...

numpy中的高维数组转置实例

numpy中的高维数组转置实例

numpy中的ndarray很适合数组运算 transpose是用来转置的一个函数,很容易让人困惑,其实它是对矩阵索引顺序的一次调整。原先矩阵是一个三维矩阵,索引顺序是x,y,z,角标...