当前位置:首页 » 编程语言 » python的except

python的except

发布时间: 2022-04-12 05:37:24

1. python except中的e是什么意思

这个e是异常类的一个实例,如果我们完整地解释这个问题,我觉得还是从Python的自定义异常类说起比较好。

假如,我们现在自定义一个简单的异常类:
class MyError(Exception):
def __init__(self, value):
self.value = value
def __str__(self):
return repr(self.value)

我们抛这个异常的时候可以这么写:
try:
raise MyError(2*2)
except MyError as e:
print 'My exception occurred, value:', e.value

我们在捕获这个异常之后假如需要访问TA的一些属性怎么办,这个时候就可以使用as关键字
所以,这里的e是前面MyError类的一个instance,我们可以直接访问他的value,也就是你看到的e.value

2. python中的try...except的用法

这里的Pickle和cPickle是模块名称不能用小写;cPickle 和 Pickle 是python的两个模块,提供了数据持久化的方法,其中cPickle是Pickle的C语言实现。
try:
import cPickle as p # 若能导入cPickle模块则导入,并以p命名
except:
import Pickle as p # 若导入cPickle模块导入错误,则导入Pickle,并以p命名

3. python大佬们,能不能告诉,while中try, break,except ,到底都是啥意思吗

while是循环语句,因为有些开发需要,可以让程序一直执行同一个操作,这就叫循环,而当得到结果不再需要循环时,则用break语句跳出循环,避免程序进入死循环

比如:

补充:

break必须在循环语句里使用,python的循环语句有for和while。

4. python中异常处理的使用方法

8.3. 异常处理
通过编程处理选择的异常是可行的。看一下下面的例子:它会一直要求用户输入,直到输入一个合法的整数为止,但允许用户中断这个程序(使用 Control-C 或系统支持的任何方法)。注意:用户产生的中断会引发一个 KeyboardInterrupt 异常。
>>> while True:
... try:
... x = int(input("Please enter a number: "))
... break
... except ValueError:
... print("Oops! That was no valid number. Try again...")
...
try 语句按如下方式工作。
首先,执行 try 子句 (在 try 和 except 关键字之间的部分)。
如果没有异常发生, except 子句 在 try 语句执行完毕后就被忽略了。
如果在 try 子句执行过程中发生了异常,那么该子句其余的部分就会被忽略。
如果异常匹配于 except 关键字后面指定的异常类型,就执行对应的except子句。然后继续执行 try 语句之后的代码。
如果发生了一个异常,在 except 子句中没有与之匹配的分支,它就会传递到上一级 try 语句中。
如果最终仍找不到对应的处理语句,它就成为一个 未处理异常,终止程序运行,显示提示信息。
一个 try 语句可能包含多个 except 子句,分别指定处理不同的异常。至多只会有一个分支被执行。异常处理程序只会处理对应的 try 子句中发生的异常,在同一个 try 语句中,其他子句中发生的异常则不做处理。一个 except 子句可以在括号中列出多个异常的名字,例如:
... except (RuntimeError, TypeError, NameError):
... pass
最后一个 except 子句可以省略异常名称,以作为通配符使用。你需要慎用此法,因为它会轻易隐藏一个实际的程序错误!可以使用这种方法打印一条错误信息,然后重新抛出异常(允许调用者处理这个异常):

5. python的try except语句

当Python脚本发生异常时我们需要捕获处理它,否则程序会终止执行。异常处理捕捉异常可以使用try/except语句。try/except语句用来检测try语句块中的错误,从而让except...

例如:

#!/usr/bin/python

#-*-coding:UTF-8-*-

try:

fh=open("testfile","w") #此处的“w”先为“r”


fh.write("这是一个测试文件,用于测试异常!!")

exceptIOError:

print("Error:没有找到文件或读取文件失败")

else:

print("内容写入文件成功")

fh.close()

6. python3 中的try... except Exception,e: ...怎么不能用了变成什么了呢

语法错误,应该改成下列语法:

python3 中捕捉异常需要使用try/except语句,具体格式如下:

try:

<语句> #运行别的代码

except <名字>:

<语句> #如果在try部份引发了'name'异常

except <名字>,<数据>:

<语句> #如果引发了'name'异常,获得附加的数据

else:<语句> #如果没有异常发生

编辑如下:

“拓展资料“:

try的工作原理是,当开始一个try语句后,python就在当前程序的上下文中作标记,这样当异常出现时就可以回到这里,try子句先执行,接下来会发生什么依赖于执行时是否出现异常。

  • 如果当try后的语句执行时发生异常,python就跳回到try并执行第一个匹配该异常的except子句,异常处理完毕,控制流就通过整个try语句(除非在处理异常时又引发新的异常)。

  • 如果在try后的语句里发生了异常,却没有匹配的except子句,异常将被递交到上层的try,或者到程序的最上层(这样将结束程序,并打印缺省的出错信息)。

  • 如果在try子句执行时没有发生异常,python将执行else语句后的语句(如果有else的话),然后控制流通过整个try语句。

7. PythonIDLE为什么执行except后会跳出去

except这个在python上一般用作异常处理,大致的格式为:

try:

<语句> #运行别的代码

except <名字>:

<语句> #如果在try部份引发了'name'异常

except <名字>,<数据>:

<语句> #如果引发了'name'异常,获得附加的数据

else:

<语句> #如果没有异常发生

参见:网页链接

8. Python新手,Python中except的用法和作用是什么请指教

except是用来处理异常的。完整举例说明:try:# 使用raise抛出异常raise IndexError("下标越界")except IndexError as e:pass #这里可以恢复代码except (TypeError, NameError):pass # 很多别的异常可以在这里处理else: # 可选,其他异常blocksprint("All good!") # 没有异常情况finally: # 无论如何都会执行的print("这里执行所有的代码,无论是否有异常")

9. python中的异常类的认识理解

9.8. 异常也是类
用户自定义异常也可以是类。利用这个机制可以创建可扩展的异常体系。
以下是两种新的,有效的(语义上的)异常抛出形式,使用 raise 语句:
raise Class
raise Instance
第一种形式中,Class 必须是 type 或其派生类的一个实例。第二种形式是以下形式的简写:
raise Class()
发生的异常其类型如果是 except 子句中列出的类,或者是其派生类,那么它们就是相符的(反过来说--发生的异常其类型如果是异常子句中列出的类的基类,它们就不相符)。例如,以下代码会按顺序打印 B,C,D:
class B(Exception):
pass
class C(B):
pass
class D(C):
pass
for cls in [B, C, D]:
try:
raise cls()
except D:
print("D")
except C:
print("C")
except B:
print("B")
要注意的是如果异常子句的顺序颠倒过来( execpt B 在最前),它就会打印 B,B,B--第一个匹配的异常被触发。
打印一个异常类的错误信息时,先打印类名,然后是一个空格、一个冒号,然后使用内置函数 str() 将类转换得到的完整字符串。

10. python的try-except异常处理语句

我记得是FileExistsError,遇到这种情况的解决方法最好是自己试一遍,然后把他提示的异常种类复制后写进代码中便可以了。比如你想知道文件名已经存在是什么异常,你就让他报那个异常,不就知道了吗?

热点内容
虚拟机连宿主机ftp 发布:2025-01-20 00:43:04 浏览:356
最小生成树的prim算法 发布:2025-01-20 00:39:40 浏览:325
淘宝助理无法上传 发布:2025-01-20 00:34:33 浏览:883
如何做一个代理服务器 发布:2025-01-20 00:18:39 浏览:803
android背单词源码 发布:2025-01-19 23:57:21 浏览:727
领动配置怎么样 发布:2025-01-19 23:56:35 浏览:83
python造数据 发布:2025-01-19 23:51:31 浏览:903
linux下卸载mysql 发布:2025-01-19 23:40:34 浏览:339
linuxweb路径 发布:2025-01-19 23:25:08 浏览:941
福建电信服务器ip地址 发布:2025-01-19 23:07:24 浏览:648