Help us understand the problem. What is going on with this article?

【備忘録】globの使い方

More than 1 year has passed since last update.

そもそもglobとは

globモジュールでは、引数に指定されたパターンにマッチするファイルパス名を取得することが出来ます。
特定のディレクトリに存在するファイルに処理を加えたい場合などに、使用します。
マッチングさせるパターンの書き方は、Unixシェルで使用される書き方と同じです。

globの書き方

1.globをインストールする

sample.py
import glob

globモジュールのglob()関数を用い、引数としてパターンを与えると実行されたディレクトリ内で、パターンにマッチするファイル名が返却されます。

2.使い方

例えば、カレントディレクトリ内に
picture1.jpg, picture2.jpg, picture3.png, picture4.jpg
があるとします。

sample.py
glob.glob('*.jpg')

を実行すると

[picture1.jpg, picture2.jpg, picture4.jpg]

が返されます。

もし、ディレクトリ内のファイルを全て返したい場合は

sample.py
glob.glob('*')

としましょう。

簡単な実用例

picture1.jpg, picture2.jpg, picture3.png, picture4.jpg
というファイル構成のディレクトリ内で

sample.py
import glob

for x in glob.glob('*.jpg'):
   print(x)

上記のコードを実行すると

picture1.jpg
picture2.jpg
picture4.jpg

という結果が表示されます。

他にも、

sample.py
import glob
import os

for x in glob.glob('*.jpg'):
    os.remove(x)
    print(x + は削除されました。”)

上記のコードを実行すると

picture1.jpgは削除されました。
picture2.jpgは削除されました。
picture4.jpgは削除されました。

と表示され、ディレクトリ内の指定されたファイルが削除されます。

拡張子やファイル名を指定してファイルを操作するのに非常に役に立ちそうです!

参考サイト

Pythonでglobモジュールを使う方法【初心者向け】

参考になりました。ありがとうございました。

HirosuguTakeshita
WEBと画像処理(超解像)
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away