python文件的seek方法的机制是什么?

python文件的seek方法的机制是什么?,python,operating-system,Python,Operating System,以上代码将 f = open('somefile') f.seek(0, 2) f.tell() 问题1: 由于指针将从文件开始移动到结束,这是否意味着操作系统必须将文件从磁盘加载到内存中 问题2: 由于指针将从文件的开始移动到结束,因此步骤2花费的时间是否与文件的大小直接相关 由于指针将从文件开始移动到结束,这是否意味着操作系统必须将文件从磁盘加载到内存中 不可以。当前的文件系统实现不是顺序的,它们允许在文件中进行随机搜索 由于指针将从文件的开始移动到结束,因此步骤2花费的时间是否与文件的大

以上代码将

f = open('somefile')
f.seek(0, 2)
f.tell()
问题1:

由于指针将从文件开始移动到结束,这是否意味着操作系统必须将文件从磁盘加载到内存中

问题2:

由于指针将从文件的开始移动到结束,因此步骤2花费的时间是否与文件的大小直接相关

由于指针将从文件开始移动到结束,这是否意味着操作系统必须将文件从磁盘加载到内存中

不可以。当前的文件系统实现不是顺序的,它们允许在文件中进行随机搜索

由于指针将从文件的开始移动到结束,因此步骤2花费的时间是否与文件的大小直接相关

没有。实际上没有移动任何物理指针,它只是内存中的一个变量

由于指针将从文件开始移动到结束,这是否意味着操作系统必须将文件从磁盘加载到内存中

不可以。当前的文件系统实现不是顺序的,它们允许在文件中进行随机搜索

由于指针将从文件的开始移动到结束,因此步骤2花费的时间是否与文件的大小直接相关


没有。实际上没有移动任何物理指针,它只是内存中的一个变量。

对于随机访问文件系统,“当前位置”(通过查找更改的“指针”)是一个简单的无符号整数变量,通常只包含距文件开头的偏移量(以字节为单位)

搜索时,此偏移量会被修改(添加到绝对值或从中减去,或设置为绝对值)


查找结尾只是将偏移量设置为文件大小。

对于随机访问文件系统,“当前位置”(通过查找更改的“指针”)是一个简单的无符号整数变量,通常只包含距文件开头的偏移量(以字节为单位)

搜索时,此偏移量会被修改(添加到绝对值或从中减去,或设置为绝对值)

查找结尾只需将偏移量设置为文件的大小

 1. open a pointer point to a file
 2. move the pointer from file start to end
 3. return the bytes that the pointer moved