Python 標準ライブラリ

Python学習【365日チャレンジ!】73日目のマスターU(@Udemy11)です。

なんだか最近眠気が襲ってくる回数が増えたような気がするのですが、やっぱり年だからですかね。

睡眠時間的には、十分な気がしないでもないのですが、平均して5時間程度で、長いときで8時間、短いときで3時間です。

流石に3時間しか寝られないときは、超厳しいので、お昼寝タイムをとって対応しています。

それでは、今日もPython学習を始めていきましょう!

昨日の復習

昨日は、標準ライブラリのcollectionsのオブジェクトdefaultdictについて学習しました。

from collections import defaultdict

s = 'owijovmadlllajoijawo'

d = defaultdict(int)

for i in s:
    d[i] += 1

d2 = sorted(d.items(())
print(dict(d2))

出力結果

{'a': 3, 'd': 1, 'i': 2, 'j': 3, 'l': 3, 'm': 1, 'o': 4, 'v': 1, 'w': 2}

標準ライブラリcollectionsのオブジェクトであるdefaultdictをインポートして、文字列sに含まれるアルファベットがそれぞれいくつあるか計算することができました。

一昨日に学習した組み込み関数のsortedを使用すれば、アルファベットの昇順にそれぞれの数を表示することができました。

詳しい解説は昨日の投稿を参考にしてください。

それでは今日の学習にはいりましょう!

サードパーティライブラリ

サードパーティーライブラリとは、公式Python以外が作ったもので、PyPIというサイトにたくさんのサードパーティーライブラリが登録されています。

Python 標準ライブラリ

上記のサイトから、サードパーティー用のライブラリをダウンロードすることが可能なのですが、その数なんと!226,558プロジェクト!

そんなにたくさんのライブラリを憶えられるわけないじゃん!

と思った方、

安心してください!
だれでもすべてのプロジェクトを憶えられるわけがありませんので。。。

ということで、数多くあるサードパーティー用のライブラリの中から一例を紹介しておきます。

サードパーティーライブラリ

標準ライブラリは、Pythonをインストールしたときに用意されているので、importで読み込んで使うことができましたが、今回のサードパーティーライブラリは、importで読み込む前に、Python自体へインストールする必要があります。

今回は、サードパーティーライブラリの一つであるcollectionsのオブジェクトdefaultdictを学習します。

その使い方ですが、まずは、サードパーティーのライブラリをインストールします。

酒井さんの講座では、Pycharmでライブラリをインストールしていましたが、わたしはPythonisitaからStaShを使ってインストールしてみることにしました。

まずは、Pythonistaでシェルが使えるStaShを導入します。

StaShの導入については、こちらのサイトが参考になるかと思います。

で、Stashについては、Pythonistaのコンソール画面で下記コードを入力して実行し、保存されたlaunch_stash.pyを実行するだけ。

import requests as r; exec(r.get(‘https://bit.ly/get-stash’).text)

完了すれば、Pythonistaでシェルが使えるようになります。

Python 標準ライブラリ Pythonista StaSh

pip installでライブラリをインストール

続いて、表示されたシェルを使ってpipインストールを実行します。

本来なら、最初に紹介したPyPIのサイトから、taz.gzをダウンロードして、解凍したデータをsite-packagesフィルダに保存しますが、pipを使うことで必要な場所に自動的にインストールしてくれます。

今回は、コンソールへ出力する文字色を変えたい場合に使うtermcolorをインストールしてみます。

シェルに入力するのは、次のコードです。

pip install termcolor

これでインストールが始まり、Python Modulesフォルダの中のsite-packages-3フォルダの中に、termcolor.pyが保存されます。

これで、このtermcolorを読み込んで使うことが可能になりました。

出力テキストのカラーを変える

実際に赤い文字を出力してみました。

from termcolor import colored

print(colored('赤い文字', 'red')

出力結果

赤い文字

えっt!?なにそれ?

と思ったと思います。

私自身「なにそれ?」と思いました。

で、他の色も試してみたところ、同じような表記になるんです。

とりあえず、Pycharmで試してみると、問題なく出力には色がついてテキストが出力されるんですよね。

ということで

ということで、ネットでコンソールの出力文字に色をつける方法を調べてみると、次のようなコードで赤色出力できるとのことだったので、早速試してみました。

print("\033[31m"+'赤色'+"\033[0m")

出力結果

赤色

悲しいことに、このコードでも赤色では出力できませんでした。

でもPycharmでこのコードを実行してみるときちんと赤色で出力されたので、これはずばり、

Pythonistaの問題

に間違いはありません。

ま〜、いまのところコンソールへの出力で色を変えて出力したいことはないので、使えないと割り切っておいたほうがいいでしょう。

できないことは、できる環境でやればいいので、しれっと次のレクチャーに進んで、気持ちとプラットフォームを切り替えつつ、Python学習を継続していきます。

それでは、明日もGood Python!