一.首先我们新建一个文件:file.txt
1.我们进行write文件写入 *** 作:
f='file.txt' with open(f,'w') as fobj: fobj.write('1n') fobj.write('2n') fobj.write('3')
接着我们来读取它:
f='file.txt' with open(f) as fobj: c=fobj.read() print(c)
我们可以看到结果跟我们预想的一样。但我们每次都这样写入数据的话,下一次的内容总会替代上一次的内容,那如果我们想追加式写入呢 接着我们就来实现:
f='file.txt' with open(f,'a') as fobj: fobj.write('1n') fobj.write('2n') fobj.write('3n')
我们再来读取它:
我们可以看到达到了我们预期的效果。
2.读取文件内容还有另一种方法:
f='file.txt' with open(f) as fobj: for line in fobj: print(line.rstrip())
我们再来利用一下json中的dump和load:
from json import dump,load v={'name':'user1','age':20} with open('file.txt','w') as fobj: dump(v,fobj)
我们再来验证下json不支持对象储存:
from json import dump,load class Person: pass v=Person() with open('file.txt','w') as fobj: dump(v,fobj)
二.字符串的split分隔方法
str='a-b-c-d-e-f' arr=str.split('-') print(arr)
三.这一次我们来研究一下except-pass的作用:
首先我们来创建a.txt b.txt d.txt
a里面不写字,b里面写2行字,d里面写9行字.
(一)我们先来看一下不加except-pass的情况:
fs=['a.txt','b.txt','c.txt','d.txt'] for fname in fs: try: with open(fname) as fobj: res=fobj.readlines() ltot=len(res) print(f"{fname}'s lines is {ltot}")
我们试着去运行,但却发现它会报错:因为根本没有c.txt这个文件,当运行到这一块时,便会报错。
(二)我们再来看一下加except-pass的情况:
fs=['a.txt','b.txt','c.txt','d.txt'] for fname in fs: try: with open(fname) as fobj: res=fobj.readlines() ltot=len(res) print(f"{fname}'s lines is {ltot}") except: pass
运行一下:
我们再来一个实例来感受一下:
try: print(name) except Exception as e: print(e) else: print(name) finally: print('try..except')
四.获取错误信息
(一)获取某个错误信息:
try: print(name) except NameError as e: print(e)
(二)获取所有异常信息:
try: with open('a.txt') as fobj: print(fobj.read()) except Exception as e: print(e)
好了,我们下期再见!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)