python初学者Traceback (most recent call last):

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python初学者Traceback (most recent call last):相关的知识,希望对你有一定的参考价值。

1、打开Python开发工具IDLE,新建‘myexcept.py’文件,并写代码如下:

classmyException(Exception):

def__init__(self,error):

self.error=error

def__str__(self,*args,**kwargs):

returnself.error

这就是自定义定义的异常类,继承自Exception父类,有error字段,__str__函数的作用是打印对象时候,显示的字符串。

2、继续写代码,抛出异常,代码如下:

classmyException(Exception):

def__init__(self,error):

self.error=error

def__str__(self,*args,**kwargs):

returnself.error

raisemyException('自定义异常')

3、F5运行程序,在Shell中打印出异常:

Traceback(mostrecentcalllast):

  File "C:/Users/123/AppData/Local/Programs/Python/Python36/myexcept.py", line 7, in <module>

raisemyException('自定义异常')

myException:自定义异常

4、下面做测试来捕获这个异常,代码如下;

classmyException(Exception):

def__init__(self,error):

self.error=error

def__str__(self,*args,**kwargs):

returnself.error

try:

a=0

b=1

ifa!=b:

raisemyException('自定义异常')

exceptmyExceptionase:

print(e)

5、F5运行程序,在Shell中打印出捕获到异常的信息:自定义异常

6、也可以直接用Exception来捕获,代码如下:

classmyException(Exception):

def__init__(self,error):

self.error=error

def__str__(self,*args,**kwargs):

returnself.error

try:

a=0

b=1

ifa!=b:

raisemyException('自定义异常')

exceptExceptionase:

print(e)

7、F5运行程序,在Shell中打印出捕获到异常的信息:自定义异常

参考技术A 把 raw_input 改成 input ,再试试。
Python3将raw_input和input进行整合成了input....去除了raw_input()函数....
其接受任意输入, 将所有输入默认为字符串处理,并返回字符串类型本回答被提问者采纳
参考技术B python 2中 row_input( ) 和 input( ) 都可用作接受输入
Python3.x 中 raw_input( ) 和 input( ) 进行了整合,去除了 raw_input( ),仅保留了 input( ) 函数
所以建议你使用input代替

python运行后显示Traceback (most recent call last):啥意思?

python运行后显示Traceback (most recent call last):什么意思?

意思是:回溯(最近的一次呼叫)

这里表示您的Python程序出现了异常,括号中通俗的解释就是代码中引发异常的位置。

Python中一般使用try-except捕获异常。这样,如果引发异常,程序可对异常进行处理。避免了Traceback(most recent call last)等这样一些不友好的语句出现。

比如下面一个除零操作:

import traceback

try:
num = 1/0
except:
traceback.print_exc()

Traceback (most recent call last):
File "C:/Users/Administrator/AppData/Roaming/JetBrains/PyCharmCE2021.2/scratches/scratch.py", line 5, in <module>
num = 1/0
ZeroDivisionError: division by zero
黑体标注的是异常具体位置。

如果对异常进行处理,就不会显示这些回溯信息(Trackback这些内容)

try:
num = 1/0
except:
print('异常了')

这里程序只打印‘异常了’这三个字,但在具体编写程序时,不建议这样使用。使用中建议指明具体的异常类型。如下:

try:

    num = 1 / 0

except ZeroDivisionError as e:

    print(str(e))

打印输出“division by zero”,比Traceback友好多了!


希望回答对您有帮助!

参考技术A IOError: [Errno 2] No such file or directory: '\xe2\x80\xaaE:\\20140311.14O'
的意思是没有此文件或目录。
FileWaitToRead = open(srcPath,'r')你选择的文件打开方式是“r”。这是只读方式打开文件,不会去创建文件。所以当srcPath = '‪E:\\20140311.14O'不存在或写错时,就会报这个错误

以上是关于python初学者Traceback (most recent call last):的主要内容,如果未能解决你的问题,请参考以下文章

python运行后显示Traceback (most recent call last):啥意思?

python自动化Traceback (most recent call last):报错

Windows安装Flask Traceback (most recent call last):

Traceback (most recent call last)

Traceback (most recent call last)

求大神!运行python时出现Traceback (most recent call last),这是啥错误