Python的文件读取操作

open函数负责打开文件,里面的第一个参数必须要有:文件的路径和名称。第二个参数是操作方法:

r:以只读方式打开

w:写方式打开,会覆盖以前的内容

x:创建方式打开,如果文件已经存在,报错

a:append方式,以追加的方式对文件内容进行写入

b:binary方式,以二进制方式写入

t:文本方式打开

f = open(r"text.txt", "w")   #写的方式打开
f.close()      #打开后必须得关闭

这里以写的方式打开,但是我们没有写入东西进去,用这个方式创建文件后,一定要把它close掉。

我们推荐使用with语句,因为它会自动关闭文件,不需要我们手动关闭,所以很方便:

我们先在自己的文件夹里面创建一个txt文档,写上:

假若他日相逢
我将何以贺你
以沉默
以眼泪

接着以文件读取的方式进行操作:

with open("text.txt", "r") as f:
    strline = f.readline() #readline是按行读取内容
    while strline:   #只要strline里面的内容不为空,就一直读取
        print(strline)   #打印strline里面的内容
        strline = f.readline()  #没有后返回一个空。跳出循环

一行一行的读取,读取完毕后跳出循环。

import time

with open(r"text.txt", "r") as f:
    strChar = f.read(3)  #三个字符串一组读取内容,然后显示在屏幕上,每读一次,休息一秒钟
    while strChar:
        print(strChar)
        time.sleep(1)
        strChar = f.read(3)

这也是一个景点的案例,每三个字符串一组,三个字三个字的读取文档里面的内容。

关于文件的写操作---write

write(str):把字符串写入文件,只能是字符串

writelines(str):把字符串按行写入写入文件,可以是字符串,可以是字符序列,列表

with open(r"text.txt", "a") as f:  #以追加的方式写入
    f.write("生活不仅眼前的苟且\n还有诗和远方的田野")
with open(r"text.txt", "a") as f:
    f.writelines("生活不仅眼前的苟且")
    f.writelines("还有远方的苟且")

这里就是一行行的写入-------------------------------------------

序列化:pickle案列  pickle.dump:序列化。pickle.load反序列化

pickle.dump:把运行的东西存入磁盘

pickle.load:把磁盘的东西读取出来

import pickle
age = 19
with open(r"text01.txt", "wb") as f:  #wb写入二进制文件,就是把19转换成二进制写入
    pickle.dump(age,f)
import pickle
age = 19
with open(r"text01.txt", "rb") as f:  #rb读取二进制文件
    age = pickle.load(f)
    print(age)

猜你喜欢

转载自blog.csdn.net/May_Xu_/article/details/81635261