一、打开一个文件,设置只读(r),并赋予变量

f = open("file",'r',encoding = 'utf-8')

 

    1、对文件进行读操作(读完后光标会停在读完的位置,下次读会从光标位置读起 )

    f.read()        #读文件,一次性读完整个文件,

    f.read(10)    #只读10个字符

    f.readline()    #读一行文件

    f.readlines()    #将文件变成列表读出来

    

    2、查看文件的光标所在的下标位置

    f.tell()

 

    3、将文件光标位置移动到行首

    f.seek(0)       #光标移动到下标为0的位置

 

    4、查看打开文件的编码

    f.encoding

 

    5、判断文件是否可读,是True,否false

    f.readable()   

 

    6、判断文件的光标是否可移动,是True,否false(linux中的终端设备文件不可移动)

    f.seekable()

 

    7、关闭文件(程序运行完成后会自动关闭文件,以下是手动关闭)

    f.close()

 

    8、判断文件是否关闭,是返回True,否false

    f.closed

    

二、对文件进行写操作(w)

f = open("file",'w',encoding = 'utf-8')      #这样是创建一个新的文件,如果原来文件存在,则会被替换掉。

 

    1、对文件进行写操作

    f.write('----------------------')

 

    2、将内存缓存中的内容写入到磁盘中(由于对文件写的操作是缓存在磁盘中的,所以对内容实时性有要求的话的刷新到磁盘上去)

    f.flush()

 

    3、截断(删除下标20以后的内容)

    f.truncate(20)

    

三、对文件进行追加操作(a)

f = open("file",'a',encoding = 'utf-8')    #文件本来存在并且已经有了内容,使用追加模式则会把新内容追加到结尾。

 

四、对文件进行读和追加操作(r+)

f = open("file",'r+',encoding = 'utf-8')    #可以对文件进行读和追加的操作。

 

五、对文件进行先写后读的操作(w+)

f = open("file",'w+',encoding = 'utf-8')    #由于先创建了一个空文件,所以没有内容,只能先写操作)

 

六、对二进制文件读(rb)

f = open("file",'rb') 

 

七、对二进制文件写(wb)

f = open("file",'wb')

 

八、文件的读循环(一行行的读,并且内存中只保存一行内容,不会占很高的内存空间)

for  line    in    f:

        print(line)

 

 九、打开文件注意事项

1、每次打开文件操作完成后应当关闭文件,不然会占据内存空间,造成不必要的空间浪费(python有垃圾回收设置,执行完python文件后,会自动关闭打开的文件)

 f.flush()

2、为避免忘记关闭文件,可用以下语句打开文件(当执行完with下面的语句后,会自动关闭文件)

with  open('file','r+',encoding = 'utf-8')  as  f:

  print(f.readline())