私は Windows で Python 2.7 を使用しています。Python は初めてなので、これが簡単な場合はご容赦ください。
私が読んだすべてのことは、tell() が「位置」を返すことを示しています。これは基本的に、現在読み取り中のカーソル位置であると私は信じています。OK、それは役に立ちますが、パーセンテージを計算するためにファイルの合計「位置」を見つける方法がわかりません。
ファイルの最後までシークしてから、次のように呼び出すことができます.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
後者の情報は、OS によってより簡単にキャッシュできるため、多くの場合は高速になります。