import module
と のどちらを使用するのが最適かについての包括的なガイドを見つけようとしましたfrom module import
。私は Python を始めたばかりで、ベストプラクティスを念頭に置いて始めようとしています。
基本的に、誰かが自分の経験を共有し、他の開発者がどのような好みを持っているか、そして将来的に問題を回避するための最善の方法は何であるかを知りたかったのです。
ベストアンサー1
import module
との違いはfrom module import foo
主に主観的なものです。 最も気に入ったものを選択し、一貫して使用してください。 決定に役立つポイントをいくつか示します。
import module
- 長所:
- ステートメントのメンテナンスが少なくなります
import
。モジュールから別のアイテムを使用するために追加のインポートを追加する必要はありません。
- ステートメントのメンテナンスが少なくなります
- 短所:
- コードを入力する
module.foo
のは面倒で冗長です( を使用すると面倒さを最小限に抑えることができimport module as mo
ますmo.foo
)
- コードを入力する
from module import foo
- 長所:
- 入力が少なくて済む
foo
- モジュールのどの項目にアクセスできるかをより細かく制御
- 入力が少なくて済む
- 短所:
- モジュールから新しいアイテムを使用するには、
import
ステートメントを更新する必要があります - についての文脈がわからなくなってしまいます
foo
。例えば、ceil()
と比較して何が起こっているのかが明確ではありません。math.ceil()
- モジュールから新しいアイテムを使用するには、
どちらの方法も受け入れられますが、は使用しないでくださいfrom module import *
。
ある程度大きなコード セットの場合、おそらくimport *
それをモジュールに固定し、削除できなくなります。これは、コードで使用されている項目が「モジュール」からのものであるかどうかを判断するのが難しく、もはや使用していないと思うようになる可能性が高くimport
、確信するのは非常に困難だからです。