Pythonでglobモジュールを使う方法【初心者向け】現役エンジニアが解説
初心者向けにPythonでglobを使う方法について解説しています。これは引数で指定したパターンにマッチするパス名を取得するものです。最初にglobモジュールのインポート方法、次にパターンの書き方と実行結果の見かたをサンプルコードを書きながら覚えていきましょう。
TechAcademyマガジンは受講者数No.1のオンラインプログラミングスクールTechAcademy [テックアカデミー]が運営。初心者向けに解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。
Pythonでglobを使う方法について解説します。
そもそもPythonについてよく分からないという方は、Pythonとは何なのか解説した記事を読むとさらに理解が深まります。

今回は、Pythonに関する内容だね!

どういう内容でしょうか?

globの使い方について詳しく説明していくね!

お願いします!
globとは
globモジュールでは、引数に指定されたパターンにマッチするファイルパス名を取得できます。
特定のディレクトリに存在するファイルに処理を加えたい場合などに、使用します。
マッチングさせるパターンの書き方は、Unixシェルで使用される書き方と同じです。
globの書き方
globモジュールを使うには、まずモジュールをインポートする必要があります。
import glob
globモジュールのglob()関数を用い、引数としてパターンを与えると実行されたディレクトリ内で、パターンにマッチするファイル名が返却されます。
実際に書いてみよう
実際にフォルダからファイル一覧を取得してみよう
実際に表示して確認してみましょう。パソコンがMacの場合はターミナル、Windowsの場合はコマンドプロンプトから「Python」と入力し、Pythonの対話型インタプリタを起動します。
(以下の例ではPython3.8系を使用しています。)
.logという名前で終わるのファイルを出力する
まずglobモジュールをインポートします。
>>> import glob
例えば、現在のディレクトリに
t_1.log, t_2.log, abc.log, test101.lst
のファイルが存在したとすると、
>>> glob.glob('*.log')
の実行により、
['abc.log', 't_1.log', 't_2.log']
が返却されます。
名前がt_から始まるファイルを出力する
>>> glob.glob(’t_*.log’)
を実行すると、
[t_1.log, t_2.log]
が返却されます。
すべてのファイル名を出力する
ディレクトリ内の全てのファイル名を出力したい場合は、
>>> glob.glob(’*’)
の実行により、
['abc.log', 't_1.log', 't_2.log', 'test101.lst']
が返却されます。
取得されたファイル名に対して、それぞれに処理を加える
取得されたファイル名に対して、それぞれに処理を加えたい場合は、
例えば、
for x in glob.glob('*.log'): print x
とすれば、出力結果は、
>>> for x in glob.glob('*.log'): ... print x ... abc.log t_1.log t_2.log
となり、個々のファイル名が出力されていることが分かります。
ファイルを削除する
以下の例では、マッチングしたファイルを全て削除します。
>>> import os >>> for x in glob.glob('*.log'): ... os.remove(x) ... print (x + 'は削除されました。')
出力結果
abc.logは削除されました。 t_1.logは削除されました。 t_2.logは削除されました。
監修してくれたメンター
川井健滉(かわいたけあき)
フリーランスエンジニア(の卵)。Pythonでの開発力を売りに、 過去には、某大手サイトの開発 / 機械学習モデルの汎用性検証 / CBの作成等、幅広く経験、 元々はカフェのオーナー。しかしコーヒーは飲めない。 |

内容分かりやすくて良かったです!

ゆかりちゃんも分からないことがあったら質問してね!

分かりました。ありがとうございます!
Pythonを学習中の方へ
これで解説は終了です、お疲れさまでした。
- つまずかず「効率的に」学びたい
- 副業や転職後の「現場で使える」知識やスキルを身につけたい
プログラミングを学習していて、このように思ったことはありませんか?
テックアカデミーのPythonコースでは、第一線で活躍する「プロのエンジニア」が教えているので、効率的に実践的なスキルを完全オンラインでしっかり習得できます。
合格率10%の選考を通過した、選ばれたエンジニアの手厚いサポートを受けながら、人工知能(AI)や機械学習の基礎を完全オンラインでしっかり習得できます。
まずは一度、無料体験で学習の悩みや今後のキャリアについて話してみて、「現役エンジニアから教わること」を実感してみてください。
時間がない方、深く知ってから体験してみたい方は、今スグ見られる説明動画から先に視聴することをおすすめします!