Pycharm编辑器功能之代码折叠效果的实现代码


Posted in Python onOctober 15, 2020

  1、主题

在一些情况下,如果某些代码显得不太重要,我们可以通过Pycharm的代码折叠功能将其折叠为一行。在接下来的部分我们将介绍代码折叠功能基本用法。

  2、代码可折叠轮廓线以及折叠开关

首先,我们观察一下代码左侧的折叠线。这条细线显示在代码左侧,标记了代码块区域。当代码处于未折叠状态时,线的开头和结尾分别显示折叠开关Pycharm编辑器功能之代码折叠效果的实现代码Pycharm编辑器功能之代码折叠效果的实现代码;当代码块折叠之后,两个开关标志将会合并成一个Pycharm编辑器功能之代码折叠效果的实现代码,折叠后的代码只显示第一行,其他行隐藏在三个点号后面。单击这个加号的标志即可将折叠代码展开。

将鼠标指针悬停在折叠线上,折叠线会加粗显示:

Pycharm编辑器功能之代码折叠效果的实现代码

注意在这里我们可以取消折叠先的显示。单开设置对话框,在Editor节点下,单击Code Folding页面,取消Show code folding outline复选框的勾选。当折叠线不可见时,我们只能通过菜单命令(Code | Folding | Expand/Collapse)或者快捷键来实现代码的折叠。

  3、浏览折叠后隐藏的代码

加入你希望能够在不展开代码块的情况下查看折叠代码的内容,操作非常简单,只需将鼠标指针悬停在三个点号上,Pycharm就会弹出一个临时窗口来显示折叠的代码内容:

Pycharm编辑器功能之代码折叠效果的实现代码

Pycharm也会默认将超出当前编辑区域的代码块显示完整。如下图所示:文件开头的代码部分在当前编辑环境下不可见(超出当前编辑框的显示范围), 不过我们不必拖动滚动条来浏览那部分未显示的内容,只需将鼠标悬停在代码块结束标记Pycharm编辑器功能之代码折叠效果的实现代码,Pycharm会自动弹出窗口来补全显示当前的代码块:

Pycharm编辑器功能之代码折叠效果的实现代码

4、默认代码块的折叠规则

默认情况下折叠先会标记类和函数的实现部分,折叠也是针对这部分代码块进行的,即默认折叠一个类、一个函数。

5、折叠任意代码片

假设,你希望折叠几句零散的程序,而这些语句并不属于默认可折叠的代码块(不是一个完整的类或函数),如何做到?

首先选中你希望折叠的代码片

Pycharm编辑器功能之代码折叠效果的实现代码

然后进行以下操作(三选一即可):

在主菜单选择Code | Folding | Fold Selection/Remove Region菜单命令。

右击选中的代码片,在快捷菜单中选择Folding | Fold Selection/Remove Region

按下Ctrl+Period快捷键

Pycharm编辑器功能之代码折叠效果的实现代码

此时选中的代码片被折叠隐藏。

需要注意的就是所选代码片应该位于类体或者函数体内,如果我们选择了类或函数开头的定义部分,是无法对这部分代码进行折叠隐藏的。

6、使用双行注释来注释代码

Pycharm提供了两种逻辑代码块环绕注释方式surround:

VisualStudio模式:

Pycharm编辑器功能之代码折叠效果的实现代码

NetBeans模式:

Pycharm编辑器功能之代码折叠效果的实现代码

具体操作如下:

(1)选中待环绕注释的代码块

(2)以下操作二选一

使用Code | Surround with主菜单命令

按下Ctrl+Alt+T

(3)在弹出的快捷菜单中选择需要的注释风格:

Pycharm编辑器功能之代码折叠效果的实现代码

(4)输入一些必要的注释描述

当通过这种方法对代码片进行环绕注释之后,折叠开关会显示在注释行左侧:

Pycharm编辑器功能之代码折叠效果的实现代码

单击折叠开关可折叠对应代码片,只显示添加的环绕注释信息:

Pycharm编辑器功能之代码折叠效果的实现代码

更多有关代码折叠功能的信息参见here。

总结

到此这篇关于Pycharm编辑器功能之代码折叠效果的实现代码的文章就介绍到这了,更多相关Pycharm编辑器内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python中的map、reduce和filter浅析
Apr 26 Python
Python中Iterator迭代器的使用杂谈
Jun 20 Python
python装饰器实例大详解
Oct 25 Python
Tensorflow使用tfrecord输入数据格式
Jun 19 Python
python单例模式获取IP代理的方法详解
Sep 13 Python
pandas分别写入excel的不同sheet方法
Dec 11 Python
pyqt5实现绘制ui,列表窗口,滚动窗口显示图片的方法
Jun 20 Python
对Django项目中的ORM映射与模糊查询的使用详解
Jul 18 Python
python 异步async库的使用说明
May 04 Python
django admin 根据choice字段选择的不同来显示不同的页面方式
May 13 Python
Python连接Mysql进行增删改查的示例代码
Aug 03 Python
怎么用Python识别手势数字
Jun 07 Python
如何用Python 实现全连接神经网络(Multi-layer Perceptron)
Oct 15 #Python
python 实现非极大值抑制算法(Non-maximum suppression, NMS)
Oct 15 #Python
解决pip安装的第三方包在PyCharm无法导入的问题
Oct 15 #Python
python实现粒子群算法
Oct 15 #Python
如何将anaconda安装配置的mmdetection环境离线拷贝到另一台电脑
Oct 15 #Python
Python3.7安装PyQt5 运行配置Pycharm的详细教程
Oct 15 #Python
python利用faker库批量生成测试数据
Oct 15 #Python
You might like
PHP中register_globals参数为OFF和ON的区别(register_globals 使用详解)
2012/02/05 PHP
PHP反射机制用法实例
2014/08/28 PHP
PHP实现从远程下载文件的方法
2015/03/12 PHP
用javascript实现的仿Flash广告图片轮换效果
2007/04/24 Javascript
判断日期是否能跨月查询的js代码
2014/07/25 Javascript
JavaScript onkeydown事件入门实例(键盘某个按键被按下)
2014/10/17 Javascript
AngularJS基础 ng-model 指令详解及示例代码
2016/08/02 Javascript
webpack入门+react环境配置
2017/02/08 Javascript
vue动态生成dom并且自动绑定事件
2017/04/19 Javascript
vue.js默认路由不加载linkActiveClass问题的解决方法
2017/12/11 Javascript
Taro集成Redux快速上手的方法示例
2018/06/21 Javascript
微信小程序仿微信运动步数排行(交互)
2018/07/13 Javascript
Angular5.0 子组件通过service传递值给父组件的方法
2018/07/13 Javascript
javascript自定义右键菜单插件
2019/12/16 Javascript
javascript设计模式 ? 解释器模式原理与用法实例分析
2020/04/17 Javascript
vue 添加和编辑用同一个表单,el-form表单提交后清空表单数据操作
2020/08/03 Javascript
Vue中nprogress页面加载进度条的方法实现
2020/11/13 Javascript
用smtplib和email封装python发送邮件模块类分享
2014/02/17 Python
Python爬虫爬验证码实现功能详解
2016/04/14 Python
Python之使用adb shell命令启动应用的方法详解
2019/01/07 Python
Python3安装psycopy2以及遇到问题解决方法
2019/07/03 Python
Python3.7 基于 pycryptodome 的AES加密解密、RSA加密解密、加签验签
2019/12/04 Python
CSS3实战第一波 让我们尽情的圆角吧
2010/08/27 HTML / CSS
html5新增的定时器requestAnimationFrame实现进度条功能
2018/12/13 HTML / CSS
Marks & Spencer爱尔兰:英国马莎百货
2016/04/20 全球购物
CPB肌肤之钥美国官网:Clé de Peau Beauté
2017/09/05 全球购物
StubHub德国:购买和出售门票
2017/09/06 全球购物
写给爸爸的道歉信
2014/01/15 职场文书
运动会开幕式邀请函
2014/01/22 职场文书
自我反省检讨书
2014/01/23 职场文书
一年级学生评语大全
2014/04/21 职场文书
房地产开发项目建议书
2014/05/16 职场文书
助人为乐道德模范事迹材料
2014/08/16 职场文书
2015国庆节宣传语
2015/07/14 职场文书
OpenCV3.3+Python3.6实现图片高斯模糊
2021/05/18 Python
python实现剪贴板的操作
2021/07/01 Python