Pythonでファイルの先頭行だけを読み取る方法【初心者向け】
Pythonでテキストファイルの最初の行だけを読み取りたい場合は、ファイルを読み込みモードで開き、ファイルオブジェクトの readline() メソッドを呼び出します。readline() はファイルから1行分だけ読み取り、その内容を文字列として返します。
readline() を使った基本的な方法
f = open('my_file.txt', 'r')
line = f.readline()
print(line)
f.close()
上記のコードでは、my_file.txt を読み込みモード('r')で開き、最初の1行を読み取って標準出力に表示しています。処理が終わったら close() を呼び出して、ファイルを明示的に閉じている点に注目してください。
with 文を使ったより安全な書き方
しかし、上記の書き方には一つ落とし穴があります。処理の途中で例外が発生した場合、close() が実行されず、ファイルが開いたまま残ってしまう可能性があるのです。
そこで推奨されるのが、with 文を使った書き方です。with ブロックを抜けた時点でファイルが自動的に閉じられるため、例外が発生してもリソースリークを心配する必要がありません。
with open('my_file.txt', 'r') as f:
print(f.readline())
コードも短くなり、安全性も高まるため、実務ではこちらの書き方が標準的なベストプラクティスとされています。
補足:関連する読み取りメソッドとの違い
- readline():1行だけ読み取る。繰り返し呼び出すと、順に次の行を読み進めます。
- readlines():全行をリストとして一度に読み込みます。巨大なファイルではメモリを大量に消費するため注意が必要です。
- next(f):ファイルオブジェクトはイテレータでもあるため、
next()関数でも先頭行を取得できます。
まとめると、ファイルの先頭行だけを読みたい場合は、「with open(...) と readline() の組み合わせ」が最もシンプルで安全な方法です。
-
PHPでテキストファイルの末尾5行だけを読み取る方法
テキストファイルの末尾5行だけを読み取りたい場合は、file() 関数と count() 関数を組み合わせることで簡単に実現できます。具体的なコードは以下のとおりです。コード例$file = file(filename.txt); for ($i = max(0, count($file)-6); $i < count($file); $i++) { echo $file[$i] . \n; }出力結果このコードを実行すると、次のような出力が得られます。ファイルに5行を超えるテキストが含まれている場合、テキストファイルの最後の5行が表示されます。コードの仕組みまず file()
-
Python Tkinterでトップレベルウィンドウ(Toplevel)だけを閉じる方法を解説
TkinterのToplevelウィンドウは、アプリケーション内に子ウィンドウを作成するための機能です。デフォルトのメインウィンドウと同様に動作し、サイズの設定やプロパティ・属性のカスタマイズはもちろん、ボタンやラベルなどのウィジェットを自由に追加できます。特定のアプリケーションでToplevelウィンドウを定義した場合、そのウィンドウだけを閉じたい場面があるでしょう。その際に活用するのがdestroy()メソッドです。このメソッドを呼び出すことで、メインウィンドウを残したまま、対象のトップレベルウィンドウのみを閉じることができます。実装例以下の例では、クリックするとToplevelウィンドウ