欢迎访问郭晓龙个人博客
你的位置:首页  > Python  > python文件的随机读写

python文件的随机读写

什么是定位?

<1>获取当前读写的位置

在读写文件的过程中,如果想知道当前的位置,可以使用tell()来获取

# 打开一个已经存在的文件
f = open("test.txt", "r")
str = f.read(3)
print ("读取的数据是 : ", str)

# 查找当前位置
position = f.tell()
print ("当前文件位置 : ", position)

str = f.read(3)
print ("读取的数据是 : ", str)

# 查找当前位置
position = f.tell()
print ("当前文件位置 : ", position)

f.close()

<2>定位到某个位置

如果在读写文件的过程中,需要从另外一个位置进行操作的话,可以使用seek()

seek(offset, from)有2个参数

offset:偏移量 from:方向 0:表示文件开头 1:表示当前位置 2:表示文件末尾 demo: 1、把位置设置为:从文件开头,偏移5个字节 2、把位置设置为:离文件末尾,3字节处

# 打开一个已经存在的文件
f = open("test.txt", "rb")
str = f.read(30)
print ("读取的数据是 : ", str)

# 查找当前位置
position = f.tell()
print ("当前文件位置 : ", position)

# 重新设置位置
f.seek(5,0)

# 查找当前位置
position = f.tell()
print ("当前文件位置 : ", position)


# 重新设置位置
f.seek(-5,2)

# 查找当前位置
position = f.tell()
print ("当前文件位置 : ", position)


f.close()

注意文件打开方式 在文本文件中,没有使用b模式选项打开的文件,只允许从文件头开始计算相对位置,从文件尾计算时就会引发异常。将 f=open("test.txt","r") 改成

f = open("test.txt","rb")

文章标题: python文件的随机读写
文章地址: http://www.guoxiaolong.cn/article-2-66
文章标签: python入门教程
Top