python ライブラリ

python

【Python】標準ライブラリについて【使用方法も含めて紹介】

こんにちは。

 

言うまでもなく、Pythonには様々なライブラリが存在します。

 

例えば、自身で作成した関数や、Pythonに標準搭載されている標準ライブラリ、pipコマンドで導入することができるパッケージ型のライブラリなどがあります。

 

※ pip とは Python のパッケージを管理するためのツールです。

Python のライブラリを挙げていけばキリがないのですが、その中でも特に標準ライブラリで頻用すると思われるものをまとめました。

 

ライブラリの覚書として確認していただければ幸いです。

pythonの様々な標準ライブラリ

python ライブラリ 標準ライブラリ

数学系ライブラリ

mathライブラリ

Pythonのライブラリの中でも数学系の基本的なライブラリを紹介します。

 

全て挙げるとキリがありませんので、代表的なメソッドを挙げていきます。

 

メソッド内容
ceil()数値の切り上げ
floor()数値の切り捨て
round()四捨五入
fabs()絶対値

>> math 数学関数 - Python 3.6 ドキュメント

round() に関してはmath.に続かずにそのまま使用する事ができます。

 

ココに注意

math や random などライブラリ名前を仕様して math.py や random.py という名前のファイルを作らないように注意しましょう。

標準ライブラリが動作しなくなるなどの原因となってしまいます。


以上で紹介したメソッドを利用してコードを記載してみましょう。

import math

x = 3.141592

print(math.ceil(x))
print(math.floor(x))
print(math.fabs(x))
print(round(x))

4
3
3.141592
3

randomライブラリ

次に、randomライブラリを紹介します。

 

randomライブラリは、ランダムに数値を取得したり、数値の並びを変更する機能があります。

 

様々なライブラリがあるので、以下のサイトを参照にして下さい。
>> random 疑似乱数 - Python 3.6 ドキュメント

メソッド内容
randrange(x)0 以上 x 未満の整数からランダムに数を選ぶ
randrange(x, y, z)x 以上 y 未満(ステップ z)の整数列からランダムに値を取得する。
randint(x, y)x 以上 y 以下 の整数列からランダムに値を選ぶ


実際に使用してみましょう。

import random

print(random.randrange(1202))
print(random.randrange(4, 23, 3))
print(random.randint(1, 17))


646
10
1

 

実行すると、以上の様にランダムに数値が出されます。

 

シーケンスに関するrandomなライブラリ

シーケンスに関する random なライブラリについては以下の記事を参照にして下さい。

 

シーケンスは seq と表示されます。

メソッド内容
choice(seq)シーケンスからランダムに要素を1つ取得する
choices(seq, k = 1)シーケンスから 重複を許容してランダムに k 個の要素を取得し、リスト形式で返す
sample(seq, k)シーケンスから重複を許容せず、ランダムに k 個の要素を取得し、リスト形式で返す
shuffle(seq)シーケンスを並び替える

以上のうち、shuffle は破壊的なメソッドになります。

 

k 以外の英小文字を入れるとErrorが起こりますので、注意です。

 

それでは、以上のメソッドを実際に利用してみましょう。

import random

seq= list(range(4, 20))

print(random.choice(seq))
print(random.choices(seq, k=1))
print(random.sample(seq, 4))

print(seq)

random.shuffle(seq)
print(seq)



12
[10]
[14, 4, 11, 13]
[4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
[19, 8, 14, 16, 12, 15, 5, 4, 6, 18, 7, 13, 17, 9, 11, 10]

カレンダー機能(日付と時刻)に関するライブラリ

日時と時刻機能のメソッドの基本

Pythonでカレンダー機能(日付と時刻)に関するライブラリを紹介します。

 

この日付と時刻に関するライブラリを使用すると、日付や時刻に関する計算を行う事が出来る様になるため、非常に便利です。

 

その様なライブラリを datetime ライブラリと言います。

 

datetime ライブラリは複数のデータを扱う事もできます。

from datetime import datetime, timedelta, timezone

jst_japan = timezone(timedelta(hours=+9), 'JST')

now_dtmjapan = datetime.now(jst_japan)

print(now_dtmjapan)

jst_japan = timezone(timedelta(hours=+9), 'JST') について解説します。

 

timedelta(hours=+9) と記載する事で "標準時から時差が9時間" という情報を持つオブジェクトが返ってきます。

 

そのオブジェクトに 「JST」という名前をつけた日時のオブジェクトを取得して jst_japan に情報を格納します。

 

特定の指定した日時からある日時のオブジェクトを作りたいときは、次のような処理を行います。

"%Y-%m-%d %H:%M:%S"%Y, %m, %d, %H, %M, %Sは、各々 年, 月, 日, 時, 分, 秒 を表します。

from datetime import datetime, timedelta, timezone

jst = timezone(timedelta(hours=+9), 'JST')

dtm_jpn = "2018-12-03 03:35:18"
dtm = datetime.strptime(dtm_jpn, "%Y-%m-%d %H:%M:%S")

print(dtm)


2018-12-03 03:35:18

Process exited with code: 0

新しいメソッドがありましたので、解説します。

 

strptime() メソッドの () の中に記入されている最初の引数 dtm_jpn は日時のデータ、2つ目の "%Y-%m-%d %H:%M:%S" は日付の書式です。

 

strptime() メソッドの () の中の1つ目に指定した日時データが、日付日時のデータとしてどのように表示されているかを2つ目の引数で指定しています。

日時と時刻計算の方法

ここで、日時計算をしてみます。

from datetime import datetime, timedelta, timezone

jst_jpn = timezone(timedelta(hours=+9), 'JST')

dtm_christ = "2018-12-25 07:07:07"
dtm = datetime.strptime(dtm_christ, "%Y-%m-%d %H:%M:%S")

print(dtm + timedelta(weeks=1))

最終行の timedelta(weeks=1) は「時間差を一週間後にする」という指示を意味しています。

 

上記の計算結果は 2019-01-01 07:07:07 となります。

 

1週間(7日)後の日付は月や年を超えて、正確に翌年度の1月1日となっています。

まとめ|pythonのライブラリについて

 

今回はPythonの標準ライブラリのうち、頻用されるものを実例を通して紹介させて頂きました。

 

Pythonに搭載されている標準ライブラリは数多くあるため、実際に手を動かして使わないと覚えられないです。

 

少なくとも今回紹介したものはサラッと見て把握して置く様にしましょう。


-python
-,