実践・初級問題チェック
問題 20 /40
現在の日時を取得する場合、正しい記述はどれか。
選択 1
from datetime import datetime
datetime.now()
選択 2
from datetime import datetime
datetime.datetime.now()
選択 3
import datetime
datetime.now()
選択 4
import datetime
now()
解説
選択肢1が正解です。
datetimeモジュールには以下の4つのオブジェクトがあります。
date(日付)
time(時刻)
datetime(日時)
timedelta(日付と時刻の計算)
この中でまぎわらしいのは、モジュールと同じ名前のオブジェクト「datetime」です。
Pythonでモジュールをインポートする場合は、以下のいずれかの記述をします。
-------------------------------
【1】from モジュール名 import オブジェクト名
【2】import モジュール名
-------------------------------
【1】の場合は、コードの中でモジュール名を記述せずに「オブジェクト名.関数名()」で使えます。
【2】の場合は、コードの中で「モジュール名.オブジェクト名.関数名()」と記述する必要があります。
datetimeモジュールの場合、【1】で「モジュール名.オブジェクト名.関数名()」と記述するとAttributeエラーになります。
また、【2】で「オブジェクト名.関数名()」と記述するとAttributeエラーになります。
現在日時を取得する場合、正しい記述は以下のいずれかとなります。
【1】
from datetime import datetime
datetime.now()
【2】
import datetime
datetime.datetime.now()
(公式書籍 p.165-166)