IT・技術研修ならCTC教育サービス

サイト内検索 企業情報 サイトマップ

研修コース検索

コラム

ゼロから歩くPythonの道

CTC 教育サービス

 [IT研修]注目キーワード   Python  UiPath(RPA)  最新技術動向  Microsoft Azure  Docker  Kubernetes 

第4回 Python標準ライブラリのモジュール「calendar」で遊んでみよう! (菱沼佑香) 2020年1月

こんにちは、吉政創成 アシスタントの菱沼です。

4回目となる今回も「いちばんやさしいPython入門教室(大澤文孝氏著/ソーテック社)」を片手に勉強していきます。

前回はIDLEを使って計算をしてみましたが、今回はモジュールを使っていきます。

モジュールってなんだっけ?

自分の記事の引用で申し訳ないのですが、こういうものになります。

>モジュールって何?

上記で機能と表現しましたが正確には機能がたくさん詰まった「関数集」(P116) ハードウェアで言うと部品。このモジュールを集めて作られるのがアプリケーションor機械ということになります。 私は関数と言われると、Excelの数式を思い出します。合計を出すならSum関数、検索するならvlookup関数とか使いますよね。そうした関数を一緒に使って結果を出すこともありますので、きっとそういうものなのだろうと想像しました。

(引用: 第2回 Python3を学ぶ理由と、モジュール/ライブラリとは?

この時はそういうものかーで流していましたが、もっとわかりやすい解説はないかと探してみたらこちらのサイトさまがわかりやすかったです。

Pythonのモジュールについて抑えておくべき知識とよく使うもの一覧|HEADBOOST

カレンダーのモジュールで遊んでみよう!

さて、テキストで例として挙げられたモジュールはカレンダー(P.42)です。早速、12月のカレンダーを出してみようと使ってみました。

fig01

おお。出た。確かに12月のカレンダーです。

このカレンダーを出すために打ち込んだのは2つのコマンドです。赤字が命令部分となります。

P.42 引用)

「import」という命令は、「その機能(ここではcalendar)を使うよ」という意味です。

「print」というのは画面に文字や数字などを表示する命令です。そして「calendar.month(2017,12)」は、「2017年12月のカレンダーを取得する」という意味です。

今回、私が画像内で打ち込んだコマンドは次のようになっています。

import calendar
print(calendar.month(2019,12))

つまり、この2つのコマンドの意味は、「①カレンダーの機能を使って、②2019年12月のカレンダーの情報を取得して表示させなさい」ということになります。

カレンダーを使った処理もいろいろできる

ところで、カレンダーは月曜からスタートしてほしい派ですか?私は日曜日で始まってほしい派です。そんな方に朗報。変えられました。

カレンダーのデフォルト設定では月曜日が最初にくるように設定されています。日曜日を最初にくるように設定したいという場合は、次のコマンドを打ち込みます。

calendar.setfirstweekday(calendar.SUNDAY)

赤字=(カレンダーの)週の最初の曜日を設定

緑字=日曜にするよ!

緑字はMONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAYで指定できます。(ちなみに小文字で書いたらエラーになりました。)

fig02

おお。変わった。

特定の日の曜日を教えてもらうこともできるようだったので、ついでに試してみました。

Pythonさんや、2019年12月24日の曜日を教えて頂戴な!

→ calendar.weekday(2019,12,24)

fig03

答え:1

1・・・?と思いますよね?

このカレンダーモジュールでは各曜日は次のように定義されているようです。

月=0、火=1、水=2、木=3、金=4、土=5、日=6

つまり、この結果で出た1というのは火曜日を指しています。うん、確かに火曜日。

calendarというモジュールでは他にもできることがありますが、曜日が返されるはずなのに数字が返ってきたぞ!?というときはこの定義を思い出しましょう。

カレンダーのモジュールでほかに何ができるのかを知りたい方は、Pythonの公式サイト「 calendar --- 一般的なカレンダーに関する関数群 」からご確認いただけます。

モジュールはたくさんある。

今回はcalendarのモジュールを利用して遊んでみましたが、tkinterというモジュールを使えば、ウィンドウも簡単に作れてしまうようです。

(P.43引用 ウィンドウ操作するには、「tkinter」というモジュールを使います。・・・そして、ウィンドウにメッセージを表示する命令を実行します。たとえば、次のように記述すると、「Hello」というメッセージが書かれたウィンドウが表示されます。)

こちらもcalendarと同じように、importを使って命令する形となるので一通り試してみましたが、これは何かプログラムができてからのほうが楽しそうでした。Lesson6-2でも出てくるようなので今回は割愛しますね。

このようにPythonで使えるモジュールはたくさんあって、それぞれがcalendarのようにいろいろなことができるようになっていました。Pythonの標準ライブラリにあるモジュールの一覧は こちら からご覧いただけます。各モジュールの詳細を覗くと、どういった処理ができるのかがわかるようになっています。

すべてを使うわけではありませんので、ささっと眺めたいだけなの、という方は、 冒頭で上げたサイト内 でモジュールの名前と役割だけを抜き出して整列してくれています。見やすい...。

ちなみに、Pythonには外部ライブラリと呼ばれるサードパーティーが開発したものもありますので、標準ライブラリにある処理しかできないというわけではありません。

今回はここで終了です。お付き合いいただき、ありがとうございました。

 


 

 [IT研修]注目キーワード   Python  UiPath(RPA)  最新技術動向  Microsoft Azure  Docker  Kubernetes