您的位置:首页 > 编程语言 > Python开发

廖雪峰python学习笔记10&&11:容错处理与文件读写

2016-07-13 15:47 751 查看
# -*- coding: utf-8 -*-

#错误应该有很多种类,如果发生了不同类型的错误,应该由不同的except语句块处理。
#没错,可以有多个except来捕获不同类型的错误:
try:
print('try...')
r = 10 / int('a')
print('result:', r)
except ValueError as e:
print('ValueError:', e)
except ZeroDivisionError as e:
print('ZeroDivisionError:', e)
#执行完except后,如果有finally语句块,则执行finally语句块,至此,执行完毕
finally:
print('finally...')
print('END')

#文件读写

#文件一次读入
try:
print('openning......')
f = open('file_test', 'r')
except FileNotFoundError as e:
print('FileNotFoundError',e)
exit()
print(f.read())
f.close()

#文件分批读入(大文件适合)
try:
print('openning......')
f = open('file_test', 'r')
except FileNotFoundError as e:
print('FileNotFoundError',e)
exit()
while True:
ch = f.read(1024)
if ch != '':
break
else:
print(ch)

#行读入
try:
print('openning......')
t = open('file_test', 'r')
except FileNotFoundError as e:
print('FileNotFoundError', e)
exit()
#调用readline()读取一行,每读一行就会在行末尾加上‘\n’
#如果Python文件读到了文件尾,则会返回一个空字符串‘’,而如果是读到一个空行的话,则会返回一个‘\n’

#调用readlines()一次读取所有内容并按行返回list
for line in f.readlines():
# strip() 可以把一个字符串前后的空白字符包括' ','\t','\n'等都删掉
print(line.strip())
t.close()

#是每次都这么写实在太繁琐,所以,Python引入了with语句来自动帮我们调用close()方法
with open('file_test', 'r') as f:
print(f.read())
#这和前面的try ... finally是一样的,但是代码更佳简洁,并且不必调用f.close()方法。

#写文件
#写文件和读文件是一样的,唯一区别是调用open()函数时,传入标识符'w'或者'wb'表示写文本文件或写二进制文件:
f = open('file_test', 'w')
f.write('Hello, world!')
f.close()
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python