1

我在 Windows 上使用 Python 2.7,而且我对 Python 很陌生,所以如果这很简单,请原谅我。

我读过的所有内容都说tell()返回“位置”,我相信这基本上是我们当前在读取中的光标位置。好的,这听起来很有帮助,但我不知道如何找到文件的总“位置”来计算百分比。

4

1 回答 1

4

您可以寻找到文件的末尾,然后调用.tell()

import os

fileobj.seek(0, os.SEEK_END)
size = fileobj.tell()
fileobj.seek(0, os.SEEK_SET)

上面的例子使用os.SEEK_*常量来设置如何解释查找偏移量(第一个参数.seek())。

或者您可以使用该os.fstat()函数来检索打开文件的大小:

import os

size = os.fstat(fileobj.fileno()).st_size

后一种信息可以更容易地被操作系统缓存,因此通常会更快。

于 2013-02-13T18:11:34.313 回答