文件操作

python中文件的操作主要包括“读”和“写”

文件打开的两种方式:

1.

  文件对象=open("文件名称","模式","encoding="utf-8"")

2.

  with open ("文件名称","模式","encoding="utf-8"")as 文件对象

    文件对象.文件的操作

文件的三种模式:

  w:

    只写模式。写文件时会清空文件的内容,文件不存在时,会创建一个文件

  r:

    只读模式。读取文件内容,对于读取的的内容以二进制的方式打开,如果读取的文件不存在会报错

  a:

    追加模式。在文章的末尾追加,如果文件不存在,会创建一个文件

在操作完文件后一定要调用close()函数将打开的文件关闭,否则改变后的文件内容不会保存到文件中,如果没有调用close()函数,操作系统不会立刻把数据写入磁盘,只是先缓存起来,只有调用close()函数是,才做系统才会保证把没有写入的数据全部写入到磁盘文件中

1.打开一个文件并写入内容

   当文件不存在时,默认会创建一个文件,再写入(只适合写新文件)

2.写入多行数据

  使用writelines()函数向文件中写入多行数据时,不会自动给各行添加换行符

3.在文件中追加新的内容

  当文件不存在时,默认会创建一个文件,再写入 

4.读取文件:read()--是读取文件中所有的内容,返回的类型是字符串,如果文件中包含字符串类型,在读取文件时要指定encoding=”utf-8“

5.读取文件:readline()---用于指定读取每一行数据,返回的类型是字符串,如果文件中包含字符串类型,在读取文件时要指定encoding=”utf-8“(读取文件是如果文件不存在,会报错)

 5.读取文件:readlines()---读取所有行,返回的类型是列表类型,如果文件中包含字符串类型,在读取文件时要指定encoding=”utf-8“(读取文件是如果文件不存在,会报错)

+模式:

w+:可读可写。若先读后写,该模式打开文件时会先清空文件里的内容,因此先读的情况下,不会获取到任何内容。若先写后读,该模式先打开文件后清空文件内容再将新的内容写入,如果需要读取文件需要调用文件对象.sekk(0)函数使阵指针回到初始位置开始读取。---若文件不存在时会自动创建

 r+:可读可写.若是先读后写会在原文的末尾添加,文件读完后指针已经在末尾。若先写后读,是从头开始覆盖写(只覆盖修改的字符,后面的字符不会被删除)而指针停留在文件覆盖的内容末尾,而不是文件的末尾,可以读出未覆盖的部分,若需要读取所有的内容读取文件前需要调用.seek(0)函数。---读取的文件如果不存在会报错

a+:追加读写.使用该模式打开一个文件一般不能先读后写,此时指针已经在文件的末尾,在不移动指针的情况下读取不到任何内容。先写后读模式,是在文件的末尾进行追加,不会覆盖文件中原有的内容,若写完后想要读取内容在不调用seek()函数前提下读取的内容为空,当内容追加后当前指针在文件的末尾,如果想要读取文件的内容需要调用函数使指针回到初始位置--如果文件不存在会自动创建文件。

 其他操作:

seek(int):改变指针的位

close():刷新缓冲区里任何还没有写入的信息,并关闭文件 

tell():获取指针当前的位置

os.rename():重命名文件---重命名文件是需要两个参数,当前文件名和新文件名

os.remove():删除文件--需要提供文件名作为参数

原文地址:https://www.cnblogs.com/zhangwei-qianqian/p/13921326.html