一.首先我们新建一个文件:file.txt
1.我们进行write文件写入操作:
f='file.txt'
with open(f,'w') as fobj:
fobj.write('1\n')
fobj.write('2\n')
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('1\n')
fobj.write('2\n')
fobj.write('3\n')
我们再来读取它:
我们可以看到达到了我们预期的效果。
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)
好了,我们下期再见!