ホームページ  >  記事  >  バックエンド開発  >  Python でワイルドカードのインポートを避ける理由

Python でワイルドカードのインポートを避ける理由

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-11-19 05:56:02985ブラウズ

Why Avoid Wildcard Imports in Python?

ワイルドカード インポートの回避: 一般的な慣行と考慮事項

未使用のインポートに関して PyLint などのリンターによって警告が出されているにもかかわらず、一般的には、ワイルドカード インポートを回避することをお勧めします。いくつかの原因によるワイルドカード インポート (from ... import *) を避けるため

修飾名の優先順位付け

修飾名を使用してモジュールをインポートする (PyQt4.QtCore インポート Qt、QPointF、QRectF から) 必要なクラスの明示的な仕様が確保され、偶発的な再バインドや、名前の衝突による気付かないエラーが発生するリスク。修飾されたインポートを使用すると、テストやデバッグ中のモックやトレースも容易になります。

短縮インポートの利点

修飾されたインポートを使用すると明確さが保証されますが、複数のプレフィックスを入力するのは面倒な場合があります。代わりに、PyQt4 から QtCore を Cr としてインポートし、PyQt4 から QtGui を Gu としてインポートするなど、短縮インポートを使用することもできます。このアプローチでは、簡潔さと読みやすさのバランスが取れていますが、略語の選択について慎重に考慮する必要があります。

複数のインポート ステートメント

すべてのインポートを結合するのではなく、複数のインポート ステートメントを使用することをお勧めします。単一行にまとめます。これにより、可読性が向上し、デバッグが簡素化され、将来の編集が容易になります。

具体的な例

このケースでは、3 番目のオプション (PyQt4 から QtCore をインポート) 、QtGui) は、2 番目のオプション (明示的に複数のリストをリストする) と比較して最小限の追加文字を必要としながら、ワイルドカードのインポートを回避するため推奨されます。クラス)。

以上がPython でワイルドカードのインポートを避ける理由の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。