python文本读写,with open as

pyhon传统读文件方式:

f = open('ECKai/haha.txt','r')
content = f.read()
f.close()

但是文件打开时可能会报错,例如文件不存在时,会抛出IOError。这时需要使用如下方法打开文件:

try:
    f = open('ECKai/haha.txt','r')
    print(f.read())
finally:
    if f:
        f.close()

为了简便上述代码,出现了with open as 的代码形式,with语句会自动调用close():

with open('ECKai/haha.txt','r') as f:
    print(f.read())

read():一次读取所有的文件,若文件较大,则占用内存极大,占用时间大。
readlines():分行读取。

for line in f.readlines():
    print(line)

read(size):最多读取size个字节。

写文件:

可以反复调用write()来写入文件,但是务必要调用f.close()来关闭文件。当我们写文件时,操作系统往往不会立刻把数据写入磁盘,而是放到内存缓存起来,空闲的时候再慢慢写入。只有调用close()方法时,操作系统才保证把没有写入的数据全部写入磁盘。忘记调用close()的后果是数据可能只写了一部分到磁盘,剩下的丢失了。with语句会自动调用close()。

with open('ECKai/haha.txt','w') as f:
    f.write("woaiLJR")
    f.close

※wb,rb读写二进制,比如图片、视频等等。

open('ECKai/haha.txt','wb')

※修改编码方式,默认UTF-8

f = open('ECKai/haha.txt', 'r', encoding='gbk')

WALDM

你可能感兴趣的:(python学习笔记)