Python中的文件基本读写操作是怎样的呢?python中,可以通过open()函数打开一个文件创建一个file类的对象来操作文件,也可以在打开文件创建file对象时指定文件打开的模式(如果没有指定打开模式,默认为r),来决定能对文件进行的操作。这里说的文件读写操作就是利用file类中提供的read、readline、 readlines和write等方法来操作文件。
Python的文件操作需要注意的是打开后,使用完毕后一定要记得关闭文件。可以反复调用write()来写入文件,但是务必要调用f.close()来关闭文件。当我们写文件时,操作系统往往不会立刻把数据写入磁盘,而是放到内存缓存起来,空闲的时候再慢慢写入。只有调用close()方法时,操作系统才保证把没有写入的数据全部写入磁盘。忘记调用close()的后果是数据可能只写了一部分到磁盘,剩下的丢失了。所以,还是用with语句来得保险:
with open("db", "r", encoding="utf-8") as fileline:
关于Python使用open函数打开文件主要有以下模式:
# w:以写方式打开, # a:以追加模式打开 (从 EOF 开始, 必要时创建新文件) # r+:以读写模式打开 # w+:以读写模式打开 (参见 w ) # a+:以读写模式打开 (参见 a ) # rb:以二进制读模式打开 # wb:以二进制写模式打开 (参见 w ) # ab:以二进制追加模式打开 (参见 a ) # rb+:以二进制读写模式打开 (参见 r+ ) # wb+:以二进制读写模式打开 (参见 w+ ) # ab+:以二进制读写模式打开 (参见 a+ )
read函数除非指定size,否则会默认读取文件的全部内容并返回。write函数会将一个str写入到文件当前写入内容的末尾(意思就是,f.write(str1), f.write(str2),str2会出现在str1的后面)。使用for循环可以对文件的每一行进行操作。
Python的文件操作中,需要注意的是:
1、由于Python能够很方便的对Unicode编码进行处理,所以最好先转换成Unicode编程进行处理;
2、由于读入文本后进行处理,可能会在文本末尾加上空格,所以写入文件的时候,最好先用strip()函数清除一下首位的空格;
3、打开文件时需要记得关闭文件;
4、操作文件数据时,直接对硬盘读取的数据进行修改操作不会改变文件,需要重新写入文件;
5、Python读写文件时,需要注意文件的指针是位于哪个位置,可以使用tell方法查询指针位置,seek方法重置指针。