Pythonのfrom...import文とは?特定の関数だけをスマートにインポートする方法
Pythonでは、モジュール全体を読み込む代わりに、必要な関数やクラスだけを選んでインポートできます。そのために使われるのが「from モジュール名 import 関数名」という形式のfrom...import文です。この書き方を使うと、コードが簡潔になり、不要な名前空間の汚染も防げます。
基本的な使い方
たとえば、mathライブラリからsin関数だけをインポートしたい場合(他の関数は不要な場合)は、次のように記述します。
>>> from math import sin >>> sin(0) 0.0
「math.」という接頭辞が不要になる理由
通常、import mathでモジュール全体を読み込んだ場合は、math.sin(0)のようにモジュール名を接頭辞として付ける必要があります。しかし、from...import文を使うと、sin関数だけが直接現在の名前空間に読み込まれるため、math.という接頭辞を付けずにそのまま呼び出せます。
asキーワードによる別名(エイリアス)の指定
インポートする関数には、asキーワードを使って別名を付けることもできます。これにより、独自の分かりやすい名前で関数を利用できます。
>>> from math import cos as cosine >>> cosine(0) 1.0
複数の関数を一度にインポートする
カンマで区切ることで、複数の関数をまとめてインポートすることも可能です。
>>> from math import sin, cos, tan >>> cos(0) 1.0
注意点
from...importは便利な一方で、多くの名前を一括して読み込むfrom module import *のような書き方は避けるのが一般的です。どの名前がどこから来たのか分かりにくくなり、意図しない名前の上書き(名前の衝突)が発生する恐れがあるためです。必要な関数だけを明示的にインポートするか、別名を付けて可読性を保つのがベストプラクティスです。
-
Pythonのassertステートメントとは?基本構文と使い方を解説
Pythonのassertステートメントとは Pythonのassertステートメントは、プログラム内で開発者が定義した条件(制約)が正しく満たされているかを確認するための仕組みです。主にデバッグ目的で使用され、スクリプトの冒頭などに記述して、前提条件が成り立っているかどうかを検証します。 基本構文 assertステートメントは、以下のような構文で記述します。 assert <some_test>, <message> この行は次のように読み解けます。「もし<some_test>がFalseと評価された場合、例外が発生し、<message>が出
-
Pythonのreturnステートメントとは?print()との違いをわかりやすく解説
Pythonのprint()関数は、文字列や数値をコンソールに出力(表示)するための関数です。一方、returnステートメントは、関数が呼び出されたときにその戻り値を画面に表示するものではありません。 returnステートメントの主な役割は次の2つです。 関数内で処理した結果(値)を、呼び出し元へ返すこと returnが実行された時点で、たとえそれが関数の最後の文でなくても、関数を即座に終了させること 値を返す関数は「実りある関数(fruitful function)」と呼ばれることがあります。また、多くの他のプログラミング言語では、値を返さない関数は「プロシージャ(procedure)」