Python学習チャンネル by PyQ

Pythonのオンライン学習プラットフォームPyQのオフィシャルブログです

【Pythonお悩み解決】なぜ、datetimeクラスは大文字から始まらないのでしょうか

こんにちは、PyQサポートです。
今回は「なぜ、datetimeクラスはクラスなのに大文字から始まらないのか」という質問への回答を紹介します。

質問:なぜ、datetimeクラスは大文字から始まらないのでしょうか

クラス名は大文字から始まると理解しています。なぜdatetimeクラスは小文字から始まるのでしょうか。

回答:Pythonの文法的には、クラス名を小文字から始められます

確かにクラスを定義するとき、通常は大文字から始めます。
しかし、 datetime モジュールの date datetime timedelta といったクラスは小文字から始まっています。

Pythonのコーディング規約 PEP-8 では、クラス名を大文字から始めることが推奨されています。
これはあくまで推奨のため、違反してもエラーにはなりません。
datetimeモジュールの一部はPEP-8よりも前に実装されたので、コーディング規約に沿っていない部分があります。
PEP-8*1 のコーディング規約に合わせて datetime のクラス名を大文字に変更すると既存コードとの互換性が失われてしまい、多くのプログラマーが対応に追われることになってしまいます。

Pythonの文法的にはクラス名を小文字から始めても良いですが、PEP8に従ってクラス名はキャメルケースで書きます。

PyQでdatetimeを学びましょう

PyQでは、 datetime型(日付時刻型) でdatetimeについて学習できます。
また、PEP8についても Pythonのコーディング規約を学ぶ で学べます。

*1:Pythonにおける共通のコーディング規約です。https://peps.python.org/pep-0008/ に定められています。

Copyright ©2017- BeProud Inc. All rights reserved.