Pycharm在程序运行完成后,查看每个变量并继续对变量进行操作的方法(show variables)[通俗易懂]

Pycharm在程序运行完成后,查看每个变量并继续对变量进行操作的方法(show variables)[通俗易懂]Pycharm在程序运行完成后,查看每个变量并继续对变量进行操作的方法(showvariables)

大家好,又见面了,我是你们的朋友全栈君。

目录

1.问题背景

2.解决办法 

3.附录


1.问题背景

        做图像处理的人一般都用过MATLAB,好用易上手,并且里面封装了大量的算法,并且MATLAB里面有一个很贴心的功能就是你可以随时查看变量的值,以及变量的类型是什么:

Pycharm在程序运行完成后,查看每个变量并继续对变量进行操作的方法(show variables)[通俗易懂]

        在进行代码调试的时候,可以清楚的看到是哪些变量出现了问题,但是由于MATLAB的深度学习生态环境还是没有Python的开放,因此,现在更多的人在做深度学习的时候,更加倾向于使用Python,而在众多的Python IDE中,pycharm算是比较热门的了!但pycharm和MATLAB在变量交互上的形式不同,有时候为了观察变量的取值是否正确,还要到处print~~,麻烦不说还特别低效!!那么,pytharm能不能像MATLAB一样显示中间变量的值呢?答案是可以的!

        当然,你可能会问:debug不是也能直接查看变量的值吗?为什么不直接debug?从我个人角度来说,我觉得对比debug,这样做的优势有如下几点:

  1. debug会导致程序运行慢,特别是配置低的电脑会明显感受到;
  2. 有时我并不关心程序的中间变量具体是什么,我关心的是运行结束后,我依然可以对程序的所有变量进行操作,这样做可以同时获得程序本身运行的结果又可以获得Jupyter Notebook的交互计算体验;如下,我还想进一步探究OCR识别的结果,那么我在程序运行完之后,依然可以进行操作:

Pycharm在程序运行完成后,查看每个变量并继续对变量进行操作的方法(show variables)[通俗易懂]

具体软件环境如下:

  • Python 3.6.3
  • Anaconda 3(64bit)
  • ipython 6.1.0

2.解决办法 

点击运行栏的这个灰色向下剪头:

Pycharm在程序运行完成后,查看每个变量并继续对变量进行操作的方法(show variables)[通俗易懂]

单击“Edit Configurations”,

Pycharm在程序运行完成后,查看每个变量并继续对变量进行操作的方法(show variables)[通俗易懂]

在出现的窗口上,勾选上:“Show command line afterwards”:

Pycharm在程序运行完成后,查看每个变量并继续对变量进行操作的方法(show variables)[通俗易懂]

“run with Python console”(新版本): 

Pycharm在程序运行完成后,查看每个变量并继续对变量进行操作的方法(show variables)[通俗易懂]

点击OK,重启Pycharm;接着点击Run窗口:

Pycharm在程序运行完成后,查看每个变量并继续对变量进行操作的方法(show variables)[通俗易懂]

将Run的show variables图标勾选:

Pycharm在程序运行完成后,查看每个变量并继续对变量进行操作的方法(show variables)[通俗易懂]

新版本选择这个有点类似眼镜的图标: 

Pycharm在程序运行完成后,查看每个变量并继续对变量进行操作的方法(show variables)[通俗易懂]

然后你就会发现,在右边出现了变量的窗口:

Pycharm在程序运行完成后,查看每个变量并继续对变量进行操作的方法(show variables)[通俗易懂]

3.附录

        1.每个版本的Pycharm的“Show command line afterwards”可能会稍有不同,例如有版本叫:“run with Python console”,反正不管名称怎么变,位置基本是没变的,勾选试一下就知道了!

        2.上述操作只是针对一个文件,如果每个文件都想有类似的操作,可以点击生成Templates,后面运行.py文件便都会保存所有的变量:

 Pycharm在程序运行完成后,查看每个变量并继续对变量进行操作的方法(show variables)[通俗易懂]

都看到这里了,还不赶紧点赞评论收藏走一波?

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/152588.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • docker导出容器为镜像_docker如何将容器打包成镜像

    docker导出容器为镜像_docker如何将容器打包成镜像1、docker镜像、容器导出方式dockersave#IDor#Namedockerexport#IDor#Name2、save和export区别(1)、对于DockerSave方法,会保存该镜像的所有历史记录(2)、对于DockerExport方法,不会保留历史记录,即没有commit历史(3)、dockersave保存的是镜像(image),dockerexport保存的是容器(container);(4)、dockerload用来载入镜像包,dock

    2025年9月18日
    4
  • 微信小程序真机预览图片图标无法显示怎么办_小程序进去不显示内容

    微信小程序真机预览图片图标无法显示怎么办_小程序进去不显示内容注意点:1.路径问题,路径最好不要超过两个:比如/images 这是一个,../images这是两个2.图片用的是<img/>不是<image/>3.图片名、文件夹名不能为中文,不能有空格4.图片的http地址为小写、图片后缀名为小写…

    2022年8月18日
    9
  • ringbuffer原理_hashset数据结构

    ringbuffer原理_hashset数据结构本篇介绍一种简单高效的数据缓存结构:RingBuffer,这种结构实现起来只需要几行代码即可,但使用场景却很广泛,比如在Linux内核中网络数据包的缓存,系统日志的存储等多处使用过该结构。同时它也被广泛的应用于异步通信以及嵌入式设备中,提供高效的数据缓存读写操作。1.实现原理RingBufferr实现比较简单,基本上只需要一个数组结构,外加两个用于存储位置信息的变量即可。其中的数组采用固定大小容量,便于重用内存,不会出现动态内存不断分配和销毁的情况,这对于一些GC类编程语言来说,大…

    2025年10月20日
    2
  • php连接ldap服务器,使用PHP连接LDAP服务器[通俗易懂]

    php连接ldap服务器,使用PHP连接LDAP服务器[通俗易懂]LDAP是一个用来发布目录信息到许多不同资源的协议。通常它都作为一个集中的地址本使用。LDAP最基本的形式是一个连接数据库的标准方式。该数据库为读查询作了优化。因此它可以很快地得到查询结果,不过在其它方面,例如更新,就慢得多。要特别注意的是,LDAP通常作为一个hierarchal数据库使用,而不是一个关系数据库。因此,它的结构用树来表示比用表格好。正因为这样,就不能用SQL语句了。简单说来,LD…

    2022年5月15日
    33
  • c#动态加载卸载DLL的方法

    这篇文章介绍了c#动态加载卸载DLL的方法,有需要的朋友可以参考一下c#中通过反射可以方便的动态加载dll程序集,但是如果你需要对dll进行更新,却发现.net类库没有提供卸载dll程序集的方法。在

    2021年12月27日
    47
  • thinkphp漏洞检测工具_thinkphp渗透

    thinkphp漏洞检测工具_thinkphp渗透0x00前言由于框架对控制器名没有进行足够的检测会导致在没有开启强制路由的情况下可能的getshell漏洞,受影响的版本包括5.0和5.1版本,推荐尽快更新到最新版本。0x01影响范围5.x<5.1.31,<=5.0.230×02漏洞分析Thinkphpv5.0.x补丁地址:https://github.com/top-think/framework/com…

    2025年8月6日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号