From: http://blog.csdn.net/u013088062/article/details/50323393

From: http://blog.csdn.net/u013088062/article/details/50324237

From: http://blog.csdn.net/u013088062/article/details/50325135

最全Pycharm教程(26)——Pycharm搜索导航之文件名、符号名搜索

最全Pycharm教程(27)——Pycharm搜索导航之跳转到声明与定义

最全Pycharm教程(28)——Pycharm搜索导航之搜索应用实例

跳转到类:Ctrl+N

跳转到文件:Ctrl+Shift+N

跳转到符号:Ctrl+Alt+Shift+N

跳转到声明:Ctrl+B

跳转到引用:Ctrl+Alt+B

跳转到类的使用环境:Alt+F7 


跳转到文件

  按下Ctrl+Shift+N快捷键,在弹出的窗口中输入d:

  下面所显示的下拉列表中包含了所有名称中有字母d的文件。这里选择deeplyBuriedFile.py,回车,打开对应的deeplyBuriedFile.py文件。

跳转到类

  接下来我们尝试跳转到一个特定的类定义。按下Ctrl+N,输入o,注意这里你可以输入*来代表所有的文件名。在下拉列表中列出了所有名字中包含字母o的类,并且给出了对应的全路径:

  选择提示列表中的Foo,回车,这次会在光标所在的类声明处打开所在文件。

跳转到符号

  接下来我们尝试跳转到类中一个特定的成员处。按下Ctrl+Alt+Shift+N,输入a:

  选择bar,然后回车,转到对应定义。

6、跳转窗口的额外功能

  你可能注意到所弹出的窗口中还有其他控件为我们提供额外功能。

  首先,我们介绍如何跳转到当前工程之外的文件、类、符号处。

  勾选Include non-project files/classes/symbols复选框或者按下相关快捷键以打开外部提示列表。与之前的suggestion list不同的是这个列表包含了外部库中的相应的符合搜索条件的项目:

  接下来拟可以在一个独立的窗口 Find tool window来显示当前多匹配的条目,当你在进行多重搜索时,这种独立的显示模式变得很重要。同时我们也希望能够保存搜索结果方便下次查看:

  最后,你可以通过单击提示列表旁边的漏斗图标来指定当前需要显示哪种文件类型的搜索结果:

跳转到声明(定义)

  将光标定位在Cat类实例的feeds( )函数名处,按下Ctrl+B。Pycharm会自动跳转到Mammalia类feeds成员的定义:

跳转到引用

  接下来把光标至于Mammalia类名称处,查找其所有引用。按下Ctrl+Alt+B,会看到Mammalia类的引用列表:

  

  选择你想查看的引用(例如这里选择Cow),回车,Pycharm会跳转到对应引用位置。

  如果你选择了位于另外一个文件中的引用,如Carnivore,Pycharm会在一个单独的编辑选项卡中打开它。

左槽图标的导航功能

  最后我们观察窗口左槽,这里有很多附有指向箭头的图标,意味着?

  如果你将鼠标指针悬停在图标上面,Pycharm会显示其子类或者重载方法(向下的箭头)、父类(向上箭头):

  

  当你单击这个图标时,Pycharm会列出其子类或者重载方法(如果有的话):

  

  之后Pycharm会跳转到所选条目,并将光标至于对应的声明部分。

  如果只存在一个子类、父类或者重载函数,则默认执行跳转操作:

  

搜索所有引用usages

  1、主题

  这里我们将介绍Pycharm另外一项强力的搜索导航功能。假设你希望知道某个特定的类或方法都在工程中的哪些地方发挥了作用,也就是找出其所有的usages,这将是一个非常巨大而繁琐的工程,不过这里Pycharm会帮助我们实现。

  3、搜索所有引用usages

  假设我们希望找出Mammalia类的所有使用环境,然后跳转到其中一处。将光标定位在类声明处,按下Alt+F7,在Find tool window窗口中显示当前类的usages。选择了一处引用之后,回车,Pycharm会打开相关文件:

     

  顺便提一句,你可以通过快捷菜单来实现这个功能,例如在Mammalia右击,观察弹出的快捷菜单内容:

  

  通过这种方式你可以在默认设置下找到某个符号的所有usages。

  其他查询模式(参考)

  处理查找usages,Pycharm还提供了几种其他的查找方式,操作相似,目的相同,请看主菜单(Edit → Find):

  

  这些操作一部分已经制定了相关快捷键,接下来我们详细介绍。

  5、改变搜索模式,通过对话框查找usages

  将输入光标置于符号声明处,例如函数名feeds,按下Ctrl+Alt+Shift+F7,弹出对话框dialog box,在这个对话框中可以更改搜索选项。例如希望在当前打开的文件范围内来搜索,并且在新的编辑框中显示搜索结果:

  

  单击Find按钮:Pycharm会通过一个新的编辑选项卡来显示feeds的搜索结果。双击(或者使用方向键选中并回车),Pycharm打开相关文件:

  

  6、以列表形式显示usages

  在某些情况下通过搜索窗口来查看搜索结果并不是很方便,Pycharm允许将搜索结果以弹出列表的形式反馈出来。例如我们想查找Eutherian类的所用使用环境:

  将光标置于类声明处,按下Ctrl+Alt+F7(或者使用Edit→Find→Show Usages菜单命令):

  

  如果你通过方向键选中对应条目(例如Cat类)然后回车,Pycharm会跳转到相关文件。

  现在回到弹出列表窗口,如果你想恢复到之前的Find tool window模式,只需单击即可。

  最后,如果你对当前的搜索模式不满意,单击按钮打开设置对话框 dialog box

  

  7、在当前文件中查看usages

  更简单的,只需按下Ctrl+Shift+F7,或者使用Edit→Find→Highlight Usages主菜单命令,问题解决:

  

  正如你所见,每个usages在右槽对应都有一个标记,当将鼠标指针悬停在对应标记上时,Pycharm会给出简要的提示声明。单击这些标记来实现不同usages间的切换。

[Python] Search navigation in Pycharm的更多相关文章

  1. python笔记:#003#PyCharm 的初始设置

    PyCharm 的初始设置(知道) 目标 恢复 PyCharm 的初始设置 第一次启动 PyCharm 新建一个 Python 项目 设置 PyCharm 的字体显示 PyCharm 的升级以及其他 ...

  2. odoo开发环境搭建(四):python开发工具IDE pycharm配置

    odoo开发环境搭建(四):python开发工具IDE pycharm配置

  3. Python环境搭建和pycharm安装

    Python环境搭建和pycharm安装 本人安装环境为Windows10系统,下载的Python版本为3.4社区版本,可参考 1.下载Python3.4版本 官网:https://www.pytho ...

  4. python 基础 1.3 使用pycharm给python传递参数及pycharm调试模式

    一.通过pycharm 给python传递函数 1. 在pycharm终端中写入要获取的参数,进行获取 1>启动pycharm 中Terminal(终端) 窗口 点击pycharm左下角的图标, ...

  5. 2、Python的IDE之PyCharm的使用

    一.Python集成开发环境-Pycharm介绍 PyCharm是一款功能强大的,用于编写复杂需要结构化的功能代码,下面介绍一下 在Windows下如何安装PyCharm . 操作系统:Windows ...

  6. 【转载】Python 最强编辑器PyCharm详细使用指南!

    PyCharm 是一种 Python IDE,可以帮助程序员节约时间,提高生产效率.那么具体如何使用呢?本文从 PyCharm 安装到插件.外部工具.专业版功能等进行了一一介绍,希望能够帮助到大家.机 ...

  7. Python和Anoconda和Pycharm联合使用教程

    简介 Python是一种跨平台的计算机程序设计语言.是一种面向对象的动态类型语言,最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越多被用于独立的.大型项目的开发. ...

  8. Python的IDE之Pycharm的使用

    Python的IDE之Pycharm的使用 一.为什么用IDE(Python集成开发环境-Pycharm) 到现在为止,我们也是写过代码的人啦,但你有没有发现,每次写代码要新建文件.写完保存时还要选择 ...

  9. Python学习之路——pycharm的第一个项目

    Python学习之路——pycharm的第一个项目 简介: 上文中已经介绍如何安装Pycharm已经环境变量的配置.现在软件已经安装成功,现在就开始动手做第一个Python项目.第一个“Hello W ...

随机推荐

  1. [mongodb-10gen]ubuntu下安装方法

    由于自己老是不死心,所以还是继续在UBUNTU下开始我的GOLANG,今天发现服务源很快一下子就把GO的源代码从GoogleProject上给hg回来了,所以今天才查了一下在UBUNTU下安装Mong ...

  2. 打包.a 文件时, build phases- Link Binary With Libraries

    打包.a 文件时, 如果是两个Targets那么可运行调试的  build phases-  Link Binary With Libraries  如果加入.a 文件. 那么就不需要在Compile ...

  3. spring scope="prototype", scope="session"

    转自: http://www.cnblogs.com/JemBai/archive/2010/11/10/1873954.html struts+spring action应配置为scope=&quo ...

  4. windows批处理

    1.日期作为变量当做文件名的一部分. C:\Documents and Settings\Simon>echo %date%2008-09-09 星期二 C:\Documents and Set ...

  5. 基于JQuery.timer插件实现一个计时器

    基于JQuery.timer插件实现一个计时器,需要的朋友可以参考下.   先去官网下载jQuery Timers插件 ,然后引用到html中.这里是1.2 version 复制代码代码如下: < ...

  6. Java关键字--static

    在Java中,将关键字static分为三部分进行讨论,分别为Java静态变量.Java静态方法.Java静态类 Java Static Variables Java instance variable ...

  7. 解决微信浏览器无法使用reload()刷新页面

    场景是这样子的,页面在初始化时有一个ajax请求,在页面上有一个按钮,点击的时候执行window.location.reload(),正常情况reload()后页面依然会向后台发出请求,但在安卓的微信 ...

  8. QQ空间直播秒开优化实践[读]

    http://mp.weixin.qq.com/s?__biz=MzI1MTA1MzM2Nw==&mid=2649796799&idx=1&sn=42061b7d021b8d8 ...

  9. 修饰者模式(装饰者模式,Decoration)

    1. 装饰者模式,动态地将责任附加到对象上.若要扩展功能,装饰者提供了比继承更加有弹性的替代方案. 2.组合和继承的区别 继承.继承是给一个类添加行为的比较有效的途径.通过使用继承,可以使得子类在拥有 ...

  10. Swift:如何判断一个对象是否是某个类(或其子类)的实例

    在OC中我们直接可以用如下方法即可 [obj  isKindOfClass:[obj class]]; 在Swift中,并没有 .class 属性或者方法, 便可以用如下方法 class Person ...