「import module」と「from module import」のどちらを使用しますか? 質問する

「import module」と「from module import」のどちらを使用しますか? 質問する

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、確信するのは非常に困難だからです。

おすすめ記事