1楼:匿名用户
fname=input("enterinputname:")
print()
try:
fobj=open(fname,'r')exceptioerror,e:
print("***fileopenerror",e)else:
foreachlineinfobj:
eachline=eachline.strip('\n')print(eachline)
fobj.close()
你原来的**是每次for循环的都会执行下f.close(),当然会报错了!
2楼:朱要吃面
except ioerror as e:写成这样就行!你用逗号就会语法报错!
3楼:元然
python3版本的异常捕获语句是:
try:
...exceptexceptionase:...
python3 中的try... except exception,e: ...怎么不能用了?变成什么了呢?
4楼:匿名用户
对,语法改了,应该是:
except exception as e:
顺便问一下,**左边的行号是怎么弄出来的?
5楼:匿名用户
语法错误,应该改成下列语法:
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语句。
6楼:匿名用户
try:
...exceptexceptionase:...
7楼:贼猫
一个python异常实例
一个简单的异常例子,打开一个不存在的文件,引发异常:
#!/usr/local/bin/python3.2
try:
f = open("file-not-exists", "r")
except ioerror,e:
print("open exception: %s: %s\n" %(e.errno, e.strerror))
异常类型:
异常名称 描述
baseexception 所有异常的基类
systemexit 解释器请求退出
keyboardinterrupt 用户中断执行(通常是输入^c)
exception 常规错误的基类
stopiteration 迭代器没有更多的值
generatorexit 生成器(generator)发生异常来通知退出
systemexit python 解释器请求退出
standarderror 所有的内建标准异常的基类
arithmeticerror 所有数值计算错误的基类
floatingpointerror 浮点计算错误
overflowerror 数值运算超出最大限制
zerodivisionerror 除(或取模)零 (所有数据类型)
assertionerror 断言语句失败
attributeerror 对象没有这个属性
eoferror 没有内建输入,到达eof 标记
environmenterror 操作系统错误的基类
ioerror 输入/输出操作失败
oserror 操作系统错误
windowserror 系统调用失败
importerror 导入模块/对象失败
keyboardinterrupt 用户中断执行(通常是输入^c)
lookuperror 无效数据查询的基类
indexerror 序列中没有没有此索引(index)
keyerror 映射中没有这个键
memoryerror 内存溢出错误(对于python 解释器不是致命的)
nameerror 未声明/初始化对象 (没有属性)
unboundlocalerror 访问未初始化的本地变量
referenceerror 弱引用(weak reference)试图访问已经垃圾**了的对象
runtimeerror 一般的运行时错误
notimplementederror 尚未实现的方法
syntaxerror python 语法错误
indentationerror 缩进错误
taberror tab 和空格混用
systemerror 一般的解释器系统错误
typeerror 对类型无效的操作
valueerror 传入无效的参数
unicodeerror unicode 相关的错误
unicodedecodeerror unicode 解码时的错误
unicodeencodeerror unicode 编码时错误
unicodetranslateerror unicode 转换时错误
warning 警告的基类
deprecationwarning 关于被弃用的特征的警告
futurewarning 关于构造将来语义会有改变的警告
overflowwarning 旧的关于自动提升为长整型(long)的警告
pendingdeprecationwarning 关于特性将会被废弃的警告
runtimewarning 可疑的运行时行为(runtime behavior)的警告
syntaxwarning 可疑的语法的警告
userwarning 用户**生成的警告
8楼:青岛
try和except必须对齐,否则报错。我就遇到了这样的错误。
9楼:jinson无悔
这个格式是python2.7的格式。python3改了,变成 except exception as e:,有不少语法不太一样。
10楼:随风飘扬
恩,是语法改了。
except exception as e:
***x
用python打开文件总是出现ioerror怎么回事?
11楼:爱晴天的猫
1.python ioerror的出现:打开一个
不存在的文件,示例中有意输入了一个不存在的文件名,并试图打开它。程序找不到这个文件名所以引发了ioerror
”traceback (most recent call last): file "", line 1, in ioerror: [errno 2] no such file or directory:
'a.txt'“
2.文件写入时遇到python error错误原因。有同学遇到了ioerror errno 0 错误的情况,在用a+方式打开文件,之后读取该文件内容。
修改读取的内容后重新写入文件,在写入时程序也遇到了ioerror错误。这时要注意在读取文件之后记得要把文件关闭,当你需要写入文件时,要再将文件以w+方式打开写入。加深学习python open()函数文件打开、读、写基础操作,可以减少类似情况发生。
3.当你不能满足被访问文件所设置的权限时,也会引发io error错误,类似这样
”ioerror: [errno 13] permission denied: 'c:/a.txt' python permission denied“
从字面意思来理解就可以知道原因了,是因为我们执行的命令(运行python文件等),没有权限,给一个超级管理员权限就可以了。
12楼:sky不用太多
尝试在 'e:\x0cenxi.txt'前面写个r或者r,即r 'e:\x0cenxi.txt'。
这是使用原始字符串特性,即在字符串的前面已r或者小写字母r开始,则字符串不对\进行转移,直接输出,通常用于表示windows的路径。
python[1] (英国发音:/paθn/ 美国发音:/paθɑn/), 是一种面向对象的解释型计算机程序设计语言,由荷兰人guido van rossum于1989年发明,第一个公开发行版发行于1991年。
python是纯粹的自由软件, 源**和解释器cpython遵循 gpl(gnu general public license)协议[2] 。python语法简洁清晰,特色之一是强制用空白符(white space)作为语句缩进。
python具有丰富和强大的库。它常被昵称为胶水语言,能够把用其他语言制作的各种模块(尤其是c/c++)很轻松地联结在一起。常见的一种应用情形是,使用python快速生成程序的原型(有时甚至是程序的最终界面),然后对其中[3] 有特别要求的部分,用更合适的语言改写,比如3d游戏中的图形渲染模块,性能要求特别高,就可以用c/c++重写,而后封装为python可以调用的扩展类库。
需要注意的是在您使用扩展类库时可能需要考虑平台问题,某些可能不提供跨平台的实现。
7月20日,ieee发布2017年编程语言排行榜:python高居首位[4] 。
python程序出现 ioerror: [errno 0] error 提示
13楼:匿名用户
ifcho==1:
modify=raw_input('请输入替换内容:')
content2=content.replace(want,modify)
o.write(content2)
这样试试
用python打开文件总是出现ioerror: [errno 22]......,文件名等都没输错,怎么回事啊?求高人指教
14楼:**控
尝试在 'e:\x0cenxi.txt'前面写个r或者r,即r 'e:\x0cenxi.txt'。
这是使用原始字符串特性,即在字符串的前面已r或者小写字母r开始,则字符串不对\进行转移,直接输出,通常用于表示windows的路径。
15楼:爱晴天的猫
用python打开文件总是出现ioerror的原因:
1.python ioerror的出现:打开一个不存在的文件,示例中有意输入了一个不存在的文件名,并试图打开它。程序找不到这个文件名所以引发了ioerror
”traceback (most recent call last): file "", line 1, in ioerror: [errno 2] no such file or directory:
'a.txt'“
2.文件写入时遇到python error错误原因。有同学遇到了ioerror errno 0 错误的情况,在用a+方式打开文件,之后读取该文件内容。
修改读取的内容后重新写入文件,在写入时程序也遇到了ioerror错误。这时要注意在读取文件之后记得要把文件关闭,当你需要写入文件时,要再将文件以w+方式打开写入。加深学习python open()函数文件打开、读、写基础操作,可以减少类似情况发生。
3.当你不能满足被访问文件所设置的权限时,也会引发io error错误,类似这样
”ioerror: [errno 13] permission denied: 'c:/a.txt' python permission denied“
从字面意思来理解就可以知道原因了,是因为我们执行的命令(运行python文件等),没有权限,给一个超级管理员权限就可以了。