コンテンツにスキップ

Python基礎その6(ライブラリ)

この章のキーワード

  • ライブラリ
  • datetimeライブラリ
  • import
  • today()関数
  • 関数とメソッド
  • from datetime import date
  • 公式ドキュメント
  • 標準ライブラリ
  • モジュール
  • 自前のライブラリ

1.日付ライブラリを使おう

Pythonには便利な ライブラリ がいろいろあり、たくさんの機能をかんたんに使うことができます。今回は、Pythonをインストールすると最初からついているライブラリのうち、時刻や日付の計算に使う datetime を使ってみましょう。

import datetime
today = datetime.date.today()
print(today)

実行すると、今日の日付が表示されます。

今日の日付(この場合は”2022-02-14”)が表示される

今日の日付(この場合は”2022-02-14”)が表示される

解説

datetimeライブラリを読み込む

import でライブラリを読み込むことができます。 datetime は、デートタイムと読みます。英語でデートは日付、タイムは時刻のことですね。

import datetime

today()関数を使う

datetime.date は、「datetimeのdate」という意味です。そこにさらに . (ドット)がついて、 datetime.date.today() は「datetimeのdateのtoday()」という意味になります。 datetime ライブラリの中に date オブジェクトがあり、そこにさらに関数 today() があるのです。 today() は、今日の日付を返すので、3行目は変数 today に今日の日付を入れると言う意味になります。

4行目で変数 today を表示しています。

today = datetime.date.today()
print(today)

やってみよう1

datetimeライブラリの中にあるdatetimeオブジェクト(クラス)のメソッドnow()を使って今の時刻を表示させてください。

2.dateを直接使ってみよう

日付データdateはdatetimeライブラリに含まれているので、毎回 datetime.date のように書かなければいけませんが、これではコードが長くなってしまいます。

今回はdateを直接使って今日の曜日を求めてみましょう。

from datetime import date
today = date.today()
print(today.weekday())

これを実行すると、0から6までの数字のどれかが表示されます。0が月曜日、1が火曜日・・・6が日曜日です。

このコードを実行した2022年2月14日は月曜日だったので0が表示されました。

このコードを実行した2022年2月14日は月曜日だったので0が表示されました。

解説

一部だけを読み込む

from datetime import date で、「datetimeライブラリからdateを読み込む」という意味になります。このようにするとdateを直接使えます。

from datetime import date

dateを使う

今回はdatetimeではなくdateを直接呼び出したので、 date.today() というふうに使うことができます。

today = date.today()
print(today.weekday())

3.公式ドキュメントを読んでみよう

datetimeのように、Pythonに最初から付属しているライブラリは 標準ライブラリ と呼ばれます。標準ライブラリの詳細なマニュアルはPythonの公式サイトにあります。

3.10.2 Documentation

datetimeライブラリのドキュメント

datetimeライブラリのドキュメントはこちらです。datetimeだけでなく、dateやtime、timedeltaなどのオブジェクトがあります。ひとおとり目を通してみましょう。

datetime - Basic date and time types - Python 3.10.3 documentation

やってみよう2

dateオブジェクトとtimedeltaオブジェクトを使って、今日の90日後の日付を求めるプログラムを作ってください。ドキュメントを読んでtimedeltaの使い方を学びましょう。

4.自前のライブラリを作ってみよう

ライブラリは利用するだけでなく、自分で作ることもできます。今回は、西暦を渡すと令和を返す関数 reiwa() を作ってファイル mylib.py に保存してみましょう。

def reiwa(seireki):
return seireki - 2018

次に、このmylibを使うPythonのプログラムファイル libtest.py を作って実行してみましょう。

libtest.pyはmylib.pyと 同じフォルダ に置くことに注意してください。

import mylib
print(mylib.reiwa(2022))

libtest.pyを実行すると現在の令和の年が表示されます。

4が表示された

4が表示された

解説

mylibをimportする

mylib.py をライブラリとして使用したいときは import mylib のように、”.py”の部分をはぶいた名前を使います。

import mylib

関数reiwa()を使う

関数 reiwa() はmylibの関数なので、 . を使って mylib.reiwa() のように使います。 reiwa() という書き方では動かないことに注意してください。

print(mylib.reiwa(2022))

やってみよう3

mylibライブラリに、西暦の数字を渡すと昭和の年号を返す関数 showa() を追加し、libtest.pyから使ってみてください。