分享PyCharm的几个使用技巧

yipeiwu_com7年前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设计】。

相关文章

用uWSGI和Nginx部署Flask项目的方法示例

用uWSGI和Nginx部署Flask项目的方法示例

概况 在开发过程中,我们一般直接用Python命令直接运行Flask程序。这样的运行只适合我们开发,方便我们调试。一旦程序部署到线上,这样运行的Flask程序性能会比较低。可以采用uW...

python实现五子棋人机对战游戏

python实现五子棋人机对战游戏

本文代码基于 python3.6 和 pygame1.9.4。 五子棋比起我之前写的几款游戏来说,难度提高了不少。如果是人与人对战,那么,电脑只需要判断是否赢了就可以。如果是人机对战,那...

关于python之字典的嵌套,递归调用方法

一 字典的嵌套 在机器学习实战决策树部分,生成决策树时用到了字典的嵌套。 >>>s1={'no surface':{}} >>>s1['no su...

Python实现曲线点抽稀算法的示例

Python实现曲线点抽稀算法的示例

本文介绍了Python实现曲线点抽稀算法的示例,分享给大家,具体如下: 目录 何为抽稀 道格拉斯-普克(Douglas-Peuker)算法 垂距限值法 最后 正文 何...

Python环境下安装使用异步任务队列包Celery的基础教程

1.简介 celery(芹菜)是一个异步任务队列/基于分布式消息传递的作业队列。它侧重于实时操作,但对调度支持也很好。 celery用于生产系统每天处理数以百万计的任务。 celery是...