老猿Python|Python+Pycharm和 VisualStudio C++社区版使用PK及易混淆的语法问题

老猿Python|Python+Pycharm和 VisualStudio C++社区版使用PK及易混淆的语法问题
文章图片
这2年都是在用Python,使用环境要么是Python的IDLE+UE,要么使用Pycharm,近年来基本上都是使用的Pycharm。期间偶尔阅读一下C++的代码,但一直没安装相关编译器。
近来为了研究OpenCV的算法,发现光阅读源代码以及难以解惑,不得不安装了VisualStudio2019(之所以没有安装2022版,是因为2022版不支持win7),结果发现习惯了Python+Pycharm的模式重新捡起近10年没有使用的C语言开发之后,自己居然有很多的不适应。
下面就自己的印象就二者的使用进行一下对比,肯定不全,也不一定介绍的全对,欢迎大家指正。
一、性能对比
Pycharm和VisualStudio都是厚重的开发集成环境,启动慢,运行慢,但相对来说VisualStudio更重、更慢。
二、文件编辑对比
Pycharm的格式化控制比Visual更好些,但社区版只支持Python的开发。
Pycharm文件修改后自动存盘,VisualStudio不会自动存盘,必须点击保存才能存盘。
VisualStudio的查找模式不支持整词匹配,Pycharm则支持。
三、编译模式对比
Python是解释型语言,可以集中对语法检查,也可以不检查随时执行,遇到错误的语句才会终止执行。
Python代码执行时,可以在Pycharm中选择是运行还是调试模式执行。
C++是编译型语言,必须先编译才能执行。不过记得编译前一定要将文件存盘,否则修改不会在编译中生效。
C++代码执行时,只能是编译模式选择为Debug模式的程序才能选择调试执行。
四、调试模式对比
Pycharm和VisualStudio调试时,都会自动跟踪执行到对应位置的变量值,不过VisualStudio要在调试执行时通过“调试->窗口->监视”(英文版本为“Debug->Windows->Watch”)下选择不同选项打开各种不同的监视窗口,打开后就可以自动监视了,当然打开后每次调试都会自动打开,而Pycharm是自动打开监视窗口。
下面是Pycharm的调试及监视窗口截图:
老猿Python|Python+Pycharm和 VisualStudio C++社区版使用PK及易混淆的语法问题
文章图片

VisualStudio将监视窗口分为了多种类型,如自动窗口、局部变量窗口、手工添加的监视变量窗口,而Pycharm则没有这么多分类。
下面是VisualStudio的调试窗口:
老猿Python|Python+Pycharm和 VisualStudio C++社区版使用PK及易混淆的语法问题
文章图片

五、标准输出对比
在程序代码中往标准输出设备(含错误输出设备)输出信息显示方面,Pycharm是直接在集成环境的窗口中展示程序的输出信息,而VisualStudio则直接输出到一单独启动的控制台窗口。
下图下部子窗口是Pycharm中国的程序代码输出信息窗口:
老猿Python|Python+Pycharm和 VisualStudio C++社区版使用PK及易混淆的语法问题
文章图片

下面是VisualStudio集成环境的“输出”窗口:
老猿Python|Python+Pycharm和 VisualStudio C++社区版使用PK及易混淆的语法问题
文章图片

可以看到上面截图中集成开发环境中有个标题为“输出”的窗口输出内容是VisualStudio的自身系统输出信息,并不是程序运行的输出信息,其程序运行输出信息窗口为屏幕中间脱离开发环境的一个黑色的操作系统控制台窗口。
六、常易出现的Python语法代入C语法的情况
习惯使用Python后,在编辑C语言的文件时,老猿经常出现这样的错误:

  1. 语句忘记以分号结尾;
  2. 子分支习惯性地在分支处加冒号、忘记给分支下代码加大括号;
  3. 注释习惯性地用#号
  4. if条件忘记带括号,如 if true;
  5. printf中直接打印变量或值,如printf(1);
  6. 布尔变量赋值习惯性地用True和False;
  7. 带目录路径的字符串习惯性地加r,如r"c:\temp";
  8. 习惯性第单引号来标引字符串;
  9. 函数声明后习惯性地加冒号。
这些问题除非是经常Pyhon和C++都交替使用的开发人员,否则很容易犯这些错误。
七、小结
Python+Pycharm和 VisualStudio C++都是比较厚重的集成开发环境,本文介绍了 Python+Pycharm社区版和 VisualStudio C++社区版在使用方面从性能、编辑、编译、调试、程序输出方面的一些对比,可能近年来老猿基本都是使用Pycharm,因此从使用习惯来说更喜欢Pycharm一些,可惜Pycharm社区版不支持C++。
最后,老猿基于自身总结了从Python切换回C++开发的一些容易犯的语法错误,希望对大家有所帮助。
针对Python和C的开发使用习惯方面,大家有什么不同的经验吗?欢迎留言介绍。
如对文章内容存在疑问,可在博客评论区留言,或扫描博客左边的二维码关注:老猿Python 微信公号发消息咨询。
写博不易,敬请支持: 如果阅读本文于您有所获,敬请点赞、评论、收藏,谢谢大家的支持!
关于老猿的付费专栏
  1. 付费专栏《https://blog.csdn.net/laoyuanpython/category_9607725.html 使用PyQt开发图形界面Python应用》专门介绍基于Python的PyQt图形界面开发基础教程,对应文章目录为《 https://blog.csdn.net/LaoYuanPython/article/details/107580932 使用PyQt开发图形界面Python应用专栏目录》;
  2. 付费专栏《https://blog.csdn.net/laoyuanpython/category_10232926.html moviepy音视频开发专栏 )详细介绍moviepy音视频剪辑合成处理的类相关方法及使用相关方法进行相关剪辑合成场景的处理,对应文章目录为《https://blog.csdn.net/LaoYuanPython/article/details/107574583 moviepy音视频开发专栏文章目录》;
  3. 付费专栏《https://blog.csdn.net/laoyuanpython/category_10581071.html OpenCV-Python初学者疑难问题集》为《https://blog.csdn.net/laoyuanpython/category_9979286.html OpenCV-Python图形图像处理 》的伴生专栏,是笔者对OpenCV-Python图形图像处理学习中遇到的一些问题个人感悟的整合,相关资料基本上都是老猿反复研究的成果,有助于OpenCV-Python初学者比较深入地理解OpenCV,对应文章目录为《https://blog.csdn.net/LaoYuanPython/article/details/109713407 OpenCV-Python初学者疑难问题集专栏目录 》
  4. 付费专栏《https://blog.csdn.net/laoyuanpython/category_10762553.html Python爬虫入门 》站在一个互联网前端开发小白的角度介绍爬虫开发应知应会内容,包括爬虫入门的基础知识,以及爬取CSDN文章信息、博主信息、给文章点赞、评论等实战内容。
前两个专栏都适合有一定Python基础但无相关知识的小白读者学习,第三个专栏请大家结合《https://blog.csdn.net/laoyuanpython/category_9979286.html OpenCV-Python图形图像处理 》的学习使用。
对于缺乏Python基础的同仁,可以通过老猿的免费专栏《https://blog.csdn.net/laoyuanpython/category_9831699.html 专栏:Python基础教程目录)从零开始学习Python。
【老猿Python|Python+Pycharm和 VisualStudio C++社区版使用PK及易混淆的语法问题】如果有兴趣也愿意支持老猿的读者,欢迎购买付费专栏。
老猿Python,跟老猿学Python!
? ? 前往老猿Python博文目录 https://blog.csdn.net/LaoYuanPython ?

    推荐阅读