python的文件操作与异常处理
2013-05-28 21:28
519 查看
将一些知识点记录一下,有事没事看一眼。
文件读取: open
文件内容的处理:split
异常处理:try except python 面对错误的逻辑与其他语言不同。它放任错误的发生并在异常中处理它,并不会在主逻辑中添加更多的逻辑处理。
或使用with(无需使用finally)
with也可以复合使用:
pass语句就是Python的空语句或NULL语句,它什么也不做。
这是一个思路的转变:随之你必须考虑的错误越来越多,”增加额外代码和逻辑“的方案复杂性也随之增加,直到最后可能会掩盖程序的本来作用。而异常处理方案就不存在这个问题,可以一目了然地看出程序的主要作用。 通过使用Python的异常处理机制,你可以关注代码真正需要做什么,而不必担心哪里可能出问题,并编写额外的代码来避免运行时错误。谨慎的使用try可以让代码更易阅读,更易写,而且可能这是最重要的——出问题时候更容易修正。 要重点关注你的代码需要做什么。 写文件:以写的模式打开文件
w : 文件已存在则清空文件内容。 a : 追加到一个文件。 w+: 打开文件读写,不清除。 b : 以二进制操作检查文件中是否存在某个变量:locals()
调用多个缺省参数时,可指定相应的 参数名=值 来确定某个参数:
其异常的格式为:
做持久化存储,使用pickle的通用文件I/O才是上策。
本篇博客出自阿修罗道,转载请注明出处:/article/1505627.html
文件读取: open
import os os.getcwd() #取得当前的执行路径 os.chdir('C:/Users/ourgame/Desktop/headFirstPython') #进入某个路径 data = open('sketch.txt') #打开文件 print(data.readline(),end='') #读取一行,文件指针会向下移动 print(data.readline(),end='') #此句与上句输出不一样 data.seek(0) #data指针返回到文件起始位置 for each in data: print(each,end='') #输出整个文件 data.close() #关闭文件
文件内容的处理:split
for each_line in data: (role,line_spoken) = each_line.split(':') print(role,end='') print(' said: ',end='') print(line_spoken,end='')
异常处理:try except python 面对错误的逻辑与其他语言不同。它放任错误的发生并在异常中处理它,并不会在主逻辑中添加更多的逻辑处理。
try: data = open('sketch.txt') for each_line in data: # if each_line.find(":") > -1: try: (role,line_spoken) = each_line.split(':',1) print(role,end='') print(' said: ',end='') print(line_spoken,end='') except ValueError: pass except IOError as err: #使用as将异常对象,并将其赋值给一个标识符 print('File Error:'+str(err)) #‘+’用于字符串直接的连接 finally: if 'data' in locals(): data.close()
或使用with(无需使用finally)
try: with open('its.txt','w') as data: print("it's...",file=data) #输出默认为sys.stdout except IOError as err: print("File Error:"+str(err)) #str()将对象转换为字符串
with也可以复合使用:
with open("a.txt",'w') as a_out,open("b.txt",'w') as b_out:
pass语句就是Python的空语句或NULL语句,它什么也不做。
这是一个思路的转变:随之你必须考虑的错误越来越多,”增加额外代码和逻辑“的方案复杂性也随之增加,直到最后可能会掩盖程序的本来作用。而异常处理方案就不存在这个问题,可以一目了然地看出程序的主要作用。 通过使用Python的异常处理机制,你可以关注代码真正需要做什么,而不必担心哪里可能出问题,并编写额外的代码来避免运行时错误。谨慎的使用try可以让代码更易阅读,更易写,而且可能这是最重要的——出问题时候更容易修正。 要重点关注你的代码需要做什么。 写文件:以写的模式打开文件
out = opne("data.txt","w") print("test data",file=out) out.close()使用
w : 文件已存在则清空文件内容。 a : 追加到一个文件。 w+: 打开文件读写,不清除。 b : 以二进制操作检查文件中是否存在某个变量:locals()
if 'data' in locals(): xxxxxx
调用多个缺省参数时,可指定相应的 参数名=值 来确定某个参数:
print("abc",file=myout)去除字符串的空格:strip()方法可以从字符串中去除不想要的空格 格式化存储(腌制):pickle、用dump储存、用load恢复
import pickle ...... with open('mydata.pickle','wb') as mysavedata: #要以二进制操作 pickle.dump(['a','b'],mysavedata) ...... with open('mydata.pickle','rb') as my_restore_data: #以二进制取 a_list = pickle.load(my_restore_data) print(a_list) #一旦数据回到程序中,就可以像任何其他数据对象一样操作了
其异常的格式为:
except pickle.PickleError as per: print("Pickel Error:"+str(per))
做持久化存储,使用pickle的通用文件I/O才是上策。
本篇博客出自阿修罗道,转载请注明出处:/article/1505627.html
相关文章推荐
- python系列学习二——文件操作及异常处理
- python 异常处理、文件常用操作
- (完)learn python第四章:异常处理机制和文件(第一节:异常处理机制)
- Python学习系列之异常和文件操作
- [python自学笔记]匿名函数和文件处理、异常
- [Head First Python]3. 文件与异常:处理错误
- Python入门程序:文件操作和IO异常
- python-文件、异常处理、with else
- 5-Python-文件操作、异常、模块
- Python 文件 和 异常处理
- Python 中配置文件处理详解--ConfigParser,有了它就可随意操作配置文件了
- CSV文件分割与列异常处理的python脚本
- Head First Python---------(一)第一章(初识Python__人人都爱列表)、第二章(共享你的代码__函数模块)、第三章(文件与异常__处理错误)
- 利用Python处理文件并注意异常(1)
- ASP 上传文件时,发生了未处理的异常 007 asp 0104不允许操作
- Python文件与异常--处理错误
- python3的异常处理、操作excel和数据库
- python学习(二)之文件处理与错误异常
- Ruby_05_文件操作与异常处理
- Python异常处理操作实例详解