【python学习】基础篇-文件与系统-打开与读取文件、文件操作的常用方法

打开与读取文件
在 Python 中,内置了文件(file) 对象。
在使用文件对象时,首先需要通过内置的 open0 方法创建一个文件对象,然后通过该对象提供的方法进行基本的文件操作。
open() 函数的语法格式如下:

file = open(filename[,mode[,buffering]])

其中参数 fle为被创建的文件对象:
flename 为要创建或打开文件的文件名称,需要使用单引号或双引号括起来。
如果要打开的文件和当前文件在同一个目录下,那么直接写文件名即可,否则需要指定完整路径
mode 为可选参数,用于指定文件的打开模式,默认的打开模式为只读(即r);
buffering 为可选参数,用于指定读写文件的缓冲模式,值为0表示不缓存,值为1表示缓存,如果值大于1,则表示缓冲区的大小。默认值为缓存模式。
在这里插入图片描述

在 Python 中打开文件后,可以读取文件中的内容。
文件对象提供了 readline()方法用于每次读取行数据。
readline()方法的语法格式如下:

file.readline()

打开文件后,需要及时关闭,以免对文件造成不必要的破坏。
关闭文件可以使用文件对象的close()方法实现。
close()方法的语法格式如下:

file.close()

文件操作的常用方法
文件读取操作通常有三种方法:
read() 方法表示读取全部或部分内容;
readline()方法表示逐行读取;
readlincs()方法表示读取所有行内容。

下面重点介绍 read()方法和readlines()方法。
read()方法
读取文件的全部或部分内容,对于连续的面向行的读取,则不使用该方法。语法格式如下:

fp.read([size])

其中,size 为可选参数,用于指定要读取文件内容的字符数(所有字符均按一个计算,包括汉字),如read(8),表示读取前8个字符。如果省略,则返回整个文件的内容。
注意:使用 read()方法读取文件内容时,如果文件大于可用内存,则不能实现文件的读取,而是返回空字符串。

readlines()方法
返回一个列表,列表中每个元素为文件中的一行数据,语法如下:

file.readlines()

除了进行文件读取操作,有时还需要获取或移动文件指针位置的操作,常用的操作方法有 tell()方法和 seek()方法。
tell()方法
返回一个整数,表示文件指针的当前位置,即在二进制模式下距离文件头的字节数,语法如下:

file.tell()

使用 tell()方法返回的位置与为 read() 方法指定的 size 参数不同。
tell()方法返回的不是字符的个数而是字节数,其中汉字所占的字节数根据其采用的编码有所不同,如果采用GBK 编码,则一个汉字按两个字节计算;如果采用 UTF-8 编码,则一个汉字按3 个字节计算。

scck()方法
将文件的指针移动到新的位置,位置通过字节数进行指定。这里的数值与 tell() 方法返回的数值的计算方法一致。语法如下:

file.seek(offset[ ,whence])

参数说明:
file:表示已经打开的文件对象。
offset:用于指定移动的字符个数,其具体位置与 whence 有关
whence: 用于指定从什么位置开始计算。值为0表示从文件头开始计算,1表示从当前位置开始计算,2表示从文件尾开始计算,默认为 0。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值