如何解决pycharm调试报错的问题

pycharm调试报错的原因:

1、包名或文件名与内置模块名冲突;

2、PyQt兼容问题;

3、缓存问题,可以重新加载项目并清除缓存;

4、在debug时没有设置断点;

5、运行配置问题。

调试报错原因分析:

(一)包名或文件名与内置模块冲突

解决:包名 和 文件名 都不可以定义为系统内置的模块名,有时运行时显示正常,但调试时会报错,例如,包名或文件名定义为 thread

(二)PyQt的兼容问题

解决:将默认选项Auto切换为合适的选项

(三)缓存问题

解决:重新加载项目并清除缓存

点击Pycharm的File —> Invalidate Caches / Restart…,然后选择 Invalidate and Restart

(四)断点问题

解决:在debug时没有设置断点

(五)运行配置问题

解决:点击 Edit Configurations 配置文件路径和python解释器路径

内容扩展:

PyCharm调试功能

常用操作步骤:

设置好断点,debug运行; 然后F8 单步调试,遇到想进入的函数 F7 进去,想出来在 shift + F8,跳过不想看的地方,直接设置下一个断点,然后 F9 过去;

快捷键详解:

  • step over(F8快捷键):在单步执行时,在函数内遇到子函数时不会进入子函数内单步执行,而是将子函数整个执行完再停止,也就是把子函数整个作为一步。在不存在子函数的情况下是和step into效果一样的。简单的说就是,程序代码越过子函数,但子函数会执行,且不进入。
  • step into(F7快捷键):在单步执行时,遇到子函数就进入并且继续单步执行,有的会跳到源代码里面去执行。
  • step into my code(Alt+Shift+F7快捷键):在单步执行时,遇到子函数就进入并且继续单步执行,不会进入到源码中。
  • step out(Shift+F8快捷键):假如进入了一个函数体中,你看了两行代码,不想看了,跳出当前函数体内,返回到调用此函数的地方,即使用此功能即可。
  • Resume program(F9快捷键):继续恢复程序,直接运行到下一断点处。

以上就是如何解决pycharm调试报错的问题的详细内容,更多关于pycharm调试报错是什么原因的资料请关注我们其它相关文章!

(0)

相关推荐

  • 如何解决pycharm调试报错的问题

    pycharm调试报错的原因: 1.包名或文件名与内置模块名冲突: 2.PyQt兼容问题: 3.缓存问题,可以重新加载项目并清除缓存: 4.在debug时没有设置断点: 5.运行配置问题. 调试报错原因分析: (一)包名或文件名与内置模块冲突 解决:包名 和 文件名 都不可以定义为系统内置的模块名,有时运行时显示正常,但调试时会报错,例如,包名或文件名定义为 thread (二)PyQt的兼容问题 解决:将默认选项Auto切换为合适的选项 (三)缓存问题 解决:重新加载项目并清除缓存 点击Pyc

  • 解决pycharm 格式报错tabs和space不一致问题

    报错如下: TabError: inconsistent use of tabs and spaces in indentation 我推荐一种解决方法:格式化代码! 具体操作是:Code -->Reformat Cod 补充:pycharm tab格式不匹配的错误 有时候,用Pycharm打开别人的工程文件,经常会出现每行代码前tab不匹配的错误: 查阅资料后,有一个简单的设置可以轻松解决: Edit -> Convert Indents -> To Spaces OK,搞定了! 以上

  • 解决Maven 项目报错 java.httpservlet和synchronized使用方法

    使用java8 的lanmbe表达式时,使用java1.8编译,则会报错 需要在pom.xml的<bulid></build>中添加 <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>2.3.2</versi

  • ECSHOP完美解决Deprecated: preg_replace()报错的问题

    随着PHP5.5 的普及,ECSHOP系统又爆出了新的错误.PHP发展到PHP5.5版本以后,有了很多细微的变化.而ECSHOP官方更新又太慢,发现这些问题后也不及时升级,导致用户安装使用过程中错误百出.说了半天,这个新错误到底是什么呢,它的完整错误提示信息是这样的: Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in....... 注意:不是所有人的ECS

  • 解决Unixbench安装报错信息的问题

    运行环境: Ubuntu 16.04.3 x86_64 在Ubuntu下安装运行Unixbench时,提示报错信息如下 gcc -o ./pgms/ubgears -DTIME -Wall -pedantic -ansi -O2 -fomit-frame-pointer -fforce-addr -ffast-math -Wall ./src/ubgears.c -lGL -lXext -lX11 /usr/bin/ld: /tmp/ccnTgDEZ.o: undefined reference

  • 解决vue项目报错webpackJsonp is not defined问题

    在vue单页面应用中,我们大概都会使用CommonsChunkPlugin这个插件. 传送门 CommonsChunkPlugin 但是在项目经过本地测试没有任何问题,打包上线后却会报错 webpackJsonp is not defined.这是因为公共文件必须在自己引用的js文件之前引用. 可以手动改文件引用,但是推荐以下解决办法: 找到build→webpack.prod.conf.js→找到HtmlWebpackPlugin插件,添加如下配置即可 chunks: ['manifest',

  • 解决yum安装报错Protected multilib versions的问题

    今天在云服务器上装nginx,需要先安装一些依赖库比如zlib,但是安装zlib时候报错. yum install -y zlib zlib-devel (-y 指的是如果需要选yes no的自动y)下面是报错 Protected multilib versions: zlib-1.2.7-17.el7.x86_64 != zlib-1.2.7-15.el7.i686 原因是因为多个库不能共存,不过更新的话也并不行,但是可以在安装命令后面加上 --setopt=protected_multili

  • 解决pytorch-yolov3 train 报错的问题

    UserWarning: indexing with dtype torch.uint8 is now deprecated, please use a dtype torch.bool instead https://github.com/eriklindernoren/PyTorch-YOLOv3/blob/master/models.py#L191 将model.py  obj_mask转为int8 bool obj_mask=obj_mask.bool() # convert int8

  • 完美解决pyinstaller打包报错找不到依赖pypiwin32或pywin32-ctypes的错误

    报错信息 最近闲来无事,用python的tkinter库开发了一款带日程提醒的万年历桌面程序.在程序开发结束开始打包时,却发现一直报错 PyInstaller cannot check for assembly dependencies. Please install PyWin32 or pywin32-ctypes. pip install pypiwin32 但是运行pip install pypiwin32时却提示两个库都已经安装过了 可是当再运行打包脚本时就是死活无法打包,就是提示缺少

  • 解决python多线程报错:AttributeError: Can't pickle local object问题

    报错信息: Traceback (most recent call last): File "D:/flaskProject/test.py", line 35, in test pool.apply(self.out, args=(i,)) File "Python37-32\lib\multiprocessing\pool.py", line 261, in apply return self.apply_async(func, args, kwds).get(

随机推荐