python 异常处理,文件I/O

一、异常处理

1、Python常见标准异常

异常即是一个事件,该事件会在程序执行过程中发生,影响了程序的正常执行。一般情况下,Python无法正常处理程序时就会发生一个异常。异常是Python对象,表示一个错误。当Python脚本发生异常时我们需要捕获处理它,否则程序会终止执行。

异常名称说明
BaseException所有异常的基类
Exception常规错误的基类
OverflowError数值运算超出最大限制
IOError输入/输出操作失败
Warning警告的基类
KeyboardInterrupt用户中断执行
StandardError所有的内建标准异常的基类
ArithmeticError所有数值计算错误的基类
FloatingPointError浮点计算错误
AttributeError对象没有这个属性
IndexError序列中没有此索引(index)
KeyError映射中没有这个键
MemoryError内存溢出错误
NameError未声明/初始化对象
RuntimeError一般的运行时错误
SyntaxErrorPython 语法错误
TypeError对类型无效的操作
RuntimeWarning运行时行为的警告
TabErrorTab 和空格混用
IndentationError缩进错误
UnboundLocalError访问未初始化的本地变量
ImportError导入模块/对象失败

2、异常处理语句

(1)使用except带异常类型

try:
<语句>        #需要被检测的代码
except <名字><语句>        #except语句捕获同名异常信息并处理
except <名字><数据>:
<语句>        #except语句捕获同名异常信息并处理,获得附加的数据(异常参数)
else:
<语句>        #如果没有异常发生
  • 如果当try后的语句执行时发生异常,python就跳回到try并执行第一个匹配该异常的except子句,异常处理完毕,控制流就通过整个try语句(除非在处理异常时又引发新的异常)。
  • 如果在try后的语句里发生了异常,却没有匹配的except子句,异常将被递交到上层的try,或者到程序的最上层(这样将结束程序,并打印默认的出错信息)。
  • 如果在try子句执行时没有发生异常,python将执行else语句后的语句(如果有else的话),然后控制流通过整个try语句。

(2)使用except不带异常类型

try:
    正常的操作
   ......................
except:
    发生异常,执行这块代码
   ......................
else:
    如果没有异常执行这块代码

try-except语句捕获所有发生的异常。不能通过该程序识别出具体的异常信息。因为它会捕获所有的异常。

(3)使用except而带多种异常类型

使用相同的except语句来处理多个异常信息

try:
    正常的操作
   ......................
except(Exception1[, Exception2[,...ExceptionN]]]):
   发生以上多个异常中的一个,执行这块代码
   ......................
else:
    如果没有异常执行这块代码

(4)try-finally 语句

try-finally 语句无论是否发生异常都将执行finally中的代码。

try:
<语句>
finally:
<语句>    #退出try时总会执行
raise

二、文件I/O

1、读取键盘输入

str = input("请输入:")
print ("你输入的内容是: ", str)

2、打开和关闭文件

#打开一个文件
fo = open("foo.txt", "w")
 

```python
在这里插入代码片

#关闭打开的文件
fo.close()

3、write()和read()方法

write()方法可将任何字符串写入一个打开的文件,创建foo.txt文件,并将收到的内容写入该文件,并最终关闭文件。

#打开一个文件
fo = open("foo.txt", "w")
fo.write( "DJI\n")
 #关闭打开的文件
fo.close()

read()方法从一个打开的文件中读取一个字符串。需要重点注意的是,Python字符串可以是二进制数据,而不是仅仅是文字。

#打开一个文件
fo = open("foo.txt", "r+")
str = fo.read(10)
print "读取的字符串是 : ", str
#关闭打开的文件
fo.close()

4、重命名与删除文件

Python的os模块提供了执行文件处理操作的方法,比如重命名和删除文件。要使用这个模块,必须先导入它,然后才可以调用相关的各种功能。
rename()方法:
rename()方法需要两个参数,当前的文件名和新文件名。

import os 
#重命名文件test1.txt到test2.txt。
os.rename( "test1.txt", "test2.txt" )

remove()方法
你可以用remove()方法删除文件,需要提供要删除的文件名作为参数。

import os
#删除一个已经存在的文件test2.txt
os.remove("test2.txt")
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值