600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > Java工程师学快速Python(4)----- I/O与异常处理

Java工程师学快速Python(4)----- I/O与异常处理

时间:2020-02-09 02:41:01

相关推荐

Java工程师学快速Python(4)----- I/O与异常处理

读和写文件

open()将会返回一个file对象,基本语法如下:

open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)

mode参数的定义可以看下面这张表

举几个例子:

#读取文件f1 = open("/Users/ace/PycharmProjects/pythonSt/a.txt","r")f1.readlines 读取多行f1.readline 读取单行for x in f1:print(f1)

file: 必需,文件路径(相对或者绝对路径)。mode: 可选,文件打开模式buffering: 设置缓冲encoding: 一般使用utf8errors: 报错级别newline: 区分换行符closefd: 传入的file参数类型opener:

f.seek() 类似java中的RandomAccessFile 移动指针位置

f.tell() 方法, 来确定 文件流的位置

pickle 模块

类似java中的对象流,把对象写入文件中

完整例子

import pickledata1 = {'a': [1, 2.0, 3, 4+6j],'b': ('string', u'Unicode string'),'c': None}output = open('data.pkl', 'wb')pickle.dump(data1,output) //把对象写入文件中output.close()intput = open('data.pkl','rb')print(pickle.load(intput)) //把对象从文件中读取出来

==================================华丽的分割线==========================================

下面这个例子说明了异常中的所有关键字

for x in [1,2,3,4,"12fdsfds"]:try:int(x)except ValueError:print("发生错误")except (NameError,RuntimeError,TypeError):print("其他错误")except:passelse://没有发生异常时候执行print("no exption")finally://无论如何都会执行。和java类似print("all")

with open("myfile.txt") as f:for line in f:print(line)with 语句使得文件之类的对象可以 确保总能及时准确地进行清理。语句执行后,文件 f 总会被关闭,即使是在处理文件中的数据时出错也一样。其它对象是否提供了预定义的清理行为要查看它们的文档。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。