September 2024
Intermediate to advanced
288 pages
4h 10m
Japanese
型とは何か。変数の型は、その変数に代入できる値の種類、例えば整数や文字列のリストなどを指定するものだと言えます。グイド・ヴァン・ロッサムがPythonを実装した1991年当時、人気のあるプログラミング言語の大半は、型に関して静的型付けと動的型付けの2つのグループに分かれていました。
静的型付け言語(C++など)では、変数の型を事前に宣言する必要があります(コンパイラが十分に賢く、型を推論できる場合を除く)。その代わりに、コンパイラは変数が常に互換性のある値のみを保持することを保証するため、特定のバグをすべて排除できます。コンパイラは変数の値を格納するのに必要なメモリ空間を把握しているため、最適化も可能になります。
動的型付け言語はそのパラダイムを打破します。つまり、任意の変数に任意の値を代入できます。例えば、JavaScriptやPerlなどのスクリプト言語では、文字列から数値へと値を暗黙的に変換することさえあります。コードを書く速度が劇的に速くなりますが、同時に、自分の足を撃ち抜く†1可能性も高まります。
[†1] 訳注:自分の足を撃ち抜くという言い回しは動的型付け言語に限らず、古くはC言語に対しても同様のジョークが存在する。
Pythonは動的型付け言語ですが、対立する両陣営の中間の立場を選びました。次のコードで説明します。
import math number = input("Enter a number: ...Read now
Unlock full access