python 文件异常

1.文件读写追加:
f = open(‘文件路径\名称\格式’,mode=(r/w/a),encoding = ‘UTF-8’)
file = f.read/write()
print(file)
or
with open(‘文件路径\名称\格式’,‘r/w/a’,encoding = ‘UTF-8’) as f:
file = f.read/write()
print(file)
2.文件异常:try - except:
try:
检测范围
except Exception(as reason):
出现异常(Exception)后处理的代码
while True:
try:
x = int(input("请输入一个数字: "))
break
except ValueError:
print(“您输入的不是数字,请再次尝试输入!”

except子句可以同时处理多个异常,这些异常将被放在一个括号里成为一个元组:except (RuntimeError, TypeError, NameError)

   f = open('myfile.txt')
    s = f.readline()
    i = int(s.strip())
except OSError as err:
    print("OS error: {0}".format(err))
except ValueError:
    print("Could not convert data to an integer.")
except:
    print("Unexpected error:", sys.exc_info()[0])
    rais
 try:
        f = open('stu.txt','r',encoding='utf-8')
        print(f.read())
        f.close()
        
    except OSError:
        print('文件错了!')
    try/except...else:
    import sys
    for arg in sys.argv[1:]:
        try:
            f = open(arg, 'r')
        except IOError:
            print('cannot open', arg)
        else:
            print(arg, 'has', len(f.readlines()), 'lines')
            f.close()

try - finally:
    try:
        runoob()
    except AssertionError as error:
        print(error)
    else:
        try:
            with open('file.log') as file:
                read_data = file.read()
        except FileNotFoundError as fnf_error:
            print(fnf_error)
    finally:
        print('这句话,无论异常是否发生都会执行。')

``

  1. raise()语句:raise [Exception [, args [, traceback]]];(让代码报错,触发异常)
 x = 20
    if x > 15:
        raise Exception('x 不能大于 15。x 的值为: {}'.format(x)) 
        输出异常:#Traceback (most recent call last):
          File "test.py", line 3, in <module>
            raise Exception('x 不能大于 15。x 的值为: {}'.format(x))
        Exception: x 不能大于 15。x 的值为: 20


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值