【Python】ファイル保存時に日付と時間を追加する方法

プラグラミング言語「PYTHON」を使ってみよう!!

業務自動化・効率化の実例を踏まえ、解説できればと思っています。対象は、プログラムを学び始めた初心者向けとなります。

今回の内容

  • Datetimeを使用してファイル保存時に日付と時間を追加する



使用するのはDatetime

使用するのは、日付や時間を扱うことができるDatetimeライブラリです。ここではDatetimeがインストールされているのを前提として書き進めていきます。

サンプルコード

from PIL import Image
import glob
import datetime

img_files = glob.glob('*.jpg')

for file_name in img_files:

  im = Image.open(file_name)

  width = 500

  height = int(im.height * width / im.width)

  im_resized = im.resize((width, height), Image.LANCZOS)
  
  today = datetime.datetime.now()
  
  im_resized.save('resize500_'+str(datetime . date . today ( ))+'_'+str(file_name))

コメント

  • 「img_files = glob.glob(‘*.jpg’)」でフォルダに入っているJPGファイルを取得
  • 「for file_name in img_files:」で繰り返し処理
  • 「width = 100」でリサイズ。今回は100ピクセルとした
  • 「height = int(im.height * width / im.width)」で縦横の縮小率を設定
  • 「im_resized = 〜」でリサイズ実行
  • 「im_resized.save 〜」で名前を付けて保存

前回作った画像のリサイズプログラムに日付を表示してみました。

これ>>>【Python】Pillow 複数の画像を一括でリサイズする方法

ファイル書き出しの部分に 「today = datetime.datetime.now()」と「str(datetime . date . today ( ))」を追加しただけです。

書き方は複数あって、

日付のみ:str(datetime . date . today ( )
日付と時間:str(datetime . datetime . now ( )
カスタム:str(today . strftime (‘%Y%m%d-%H%M%S’)

※ファイル書き出し時に使用する場合は、strにして文字列にする必要があります。

最後の「%Y%m%d-%H%M%S」が一番使い勝手が良いように思いますね。日付だけ表示したいなら「「%Y%m%d」だけにするとかカスタマイズができます。



タイトルとURLをコピーしました