ここでは、osモジュールを用いたデータサイズの取得方法について解説しています。
os.pathモジュール
os.pathモジュールはpathを通してデータ容量やpathが実在するのかなどを調べることができるモジュールです。
os.pathを用いた使用例
画像の形式によってサイズがどのくらい変わるのか気になったので、os.pathを用いて調べてみました。
「jpeg」「svg」「png」のサイズを比較してみた
ここでは、256pxの同一アイコンでそれぞれ「jpeg」「svg」「png」形式のサイズを取得してみました
「ICOOON MONO」でプログラムアイコンをダウンロードしてローカルの任意の場所に保存します。次にプログラムを書きました。以下がプログラムです。
#os.pathを用いた使用例
import os
jpeg_size = 'pro.jpeg'
#1---任意のpath
png_size = 'pro.png'
svg_size = 'pro.svg'
j_s = os.path.getsize(jpeg_size)
#2---sizeの取得
p_s = os.path.getsize(png_size)
s_s = os.path.getsize(svg_size)
print("jpeg size[byte]=",j_s,"\npng size[byte]=",p_s,"\nsvg size=",s_s)#3---取得したサイズの出力
#出力結果は以下の通りです。
#jpeg size[byte]= 5617
#png size[byte]= 6889
#svg size= 2271
1の部分でダウンロードしたそれぞれのアイコンのパスを指定しています。2の部分でサイズを取得しています。最後に3の部分でサイズを出力しています。
結果としては「png size[byte]= 6889」「jpeg size[byte]= 5617」「svg size= 2271」です。単位はbyteです。整理すると「png>jpeg>svg」となりました。
ビットマップデータ(png、jpegなど)と二次元ベクターデータ(svgなど)では全然サイズが違いますね。サイトなどはなるべくsvgを使うと良いのかもしれませんね。
その他、osを用いた使用例
項目 | 内容 |
現在のディレクトリの取得方法 | リンク先では、Pythonを用いたカレントディレクトリを取得する方法について解説しています。 |