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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Java Web之过滤器(Filter)「建议收藏」

    Java Web之过滤器(Filter)「建议收藏」过滤器(Filter)过滤器实际上就是对web资源进行拦截,做一些处理后再交给servlet。通常都是用来拦截request进行处理的,也可以对返回的response进行拦截处理大概流程图如下应用场景自动登录统一设置编码格式访问权限控制敏感字符过滤等…

    2022年4月29日
  • 盘点几个在手机上可以用来学习编程的软件

    盘点几个在手机上可以用来学习编程的软件前天在悟空问答的时候,很荣幸被邀请参加回答“在手机上可以用来学习编程的软件有哪些?”这个问题,当时在回答的首页看到一个头条大微(小小猿爱嘻嘻)的回答,觉得十分受用,在此将其整理好,发布头条给大家学习,希望对大家学习编程有帮助。感谢大佬提供的解答,原文可以点击拓展链接进行查看。学习编程的软件其实挺多的,下面我简单几个可以在手机上编程的软件,主要分为C/C++,Java,Python,前端网页,L…

    2022年9月10日
  • mysql远程连接及用户相关命令

    一、创建用户并授权登录root:root@localhost:~#mysql-uroot-p创建username(用户)使用password(密码)从任何主机连接到mysql服务器:mysql>GRANTALLPRIVILEGESON*.*TO’username’@’%’IDENTIFIEDBY’password’WITHGRANTO…

    2022年4月6日
  • linux_c之ioctl的FIONREAD参数

    linux_c之ioctl的FIONREAD参数ioctl是用来设置硬件控制寄存器,或者读取硬件状态寄存器的数值之类的。而read,write是把数据丢入缓冲区,硬件的驱动从缓冲区读取数据一个个发送或者把接收的数据送入缓冲区。FIONREAD就是返回缓冲区中有多少字节;ioctl(keyFd,FIONREAD,&b)得到缓冲区里有多少字节要被读取,然后将字节数放入b里面。接下来就可以用read了,read(keyFd,

    2022年7月23日
  • 什么是堡垒机?为什么需要堡垒机?

    点击上方“全栈程序员社区”,星标公众号 重磅干货,第一时间送达 作者:猿话 www.toutiao.com/i6881462700229329421 什么是堡垒机 堡垒机,即在一个…

    2021年6月27日
  • C#与.NET的区别和C#程序结构

    C#与.NET的区别和C#程序结构C#语言及其特点(1)语法简洁,不允许直接操作做内存,去掉指针操作(2)彻底的面向对象设计,C#具有面向对象所应用的一切特性:封装、继承、多态(3)与Web紧密结合,C#支持绝大多数的Web标准

    2022年7月4日

发表回复

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

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