ホームページ  >  記事  >  バックエンド開発  >  Pythonでseek()メソッドを使ってファイルを操作する方法

Pythonでseek()メソッドを使ってファイルを操作する方法

不言
不言オリジナル
2018-04-28 14:18:014813ブラウズ

この記事ではPythonでファイルを操作するためのseek()メソッドのチュートリアルを中心に紹介していますので、Pythonの入門学習に必要な方は参考にしてください

Seek()メソッドは、Pythonのオフセットを設定します。ファイルの現在の場所。このパラメータはオプションで、デフォルトは 0 で、ファイルの絶対位置を意味します。値が 1 の場合は、現在位置を基準とした相対シークを意味し、2 の場合はファイルの末尾を基準とした相対位置を意味します。

戻り値はありません。 「a」または「A+」を使用してファイルを開いたり追加した場合、seek() 操作は次回の書き込み時に取り消されることに注意してください。

このメソッドは、ファイルが 'a' 追加モードを使用して書き込み専用に開かれている場合は基本的に何も行われませんが、読み取りが有効になっている (モード 'a+') 場合でも、追加モードで開かれたファイルには依然として役に立ちます。

ファイルがテキストモードで「t」を使用している場合、tell() によって返されるオフセットのみが有効です。他のオフセットを使用すると、未定義の動作が発生する可能性があります。

すべてのファイル オブジェクトが検索可能ではないことに注意してください。
構文

以下は、seek() メソッドの構文です:


fileObject.seek(offset[, whence])


Parameters

  • offset -- これは、ファイル内の読み取り/書き込みポインターの位置です。 。

  • whence -- これはオプションで、デフォルトは 0 (ファイルの絶対位置を意味します)、他の値は 1 (現在位置を基準とした相対シークを意味します)、2 はファイルの末尾を基準とした相対位置を意味します。

戻り値

このメソッドは値を返しません。

次の例は、seek() メソッドの使用法を示しています。


#!/usr/bin/python

# Open a file
fo = open("foo.txt", "rw+")
print "Name of the file: ", fo.name

# Assuming file has following 5 lines
# This is 1st line
# This is 2nd line
# This is 3rd line
# This is 4th line
# This is 5th line

line = fo.readline()
print "Read Line: %s" % (line)

# Again set the pointer to the beginning
fo.seek(0, 0)
line = fo.readline()
print "Read Line: %s" % (line)

# Close opend file
fo.close()


上記のプログラムを実行すると、次の結果が生成されます:


Name of the file: foo.txt
Read Line: This is 1st line

Read Line: This


関連する推奨事項:

Python 学習ノート: open() 関数がファイル パス エラーを開く



以上がPythonでseek()メソッドを使ってファイルを操作する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。