概要
改めてPythonがどういったプログラミング言語なのか、初学者向けに、なるべくわかりやすくまとめるように努め記述させて頂きます。
Pythonの特徴
高水準言語
高水準言語とは、人間が理解しやすい言語を指します。C/C++, Perl, Javaなども高水準言語の一例です。もちろん、高水準言語の反対である低水準言語もあり、これには機械語やアセンブリ言語が含まれます。
人間が理解しやすい言語
動的型付け言語
動的型付け言語とは、変数の型を事前に宣言しない言語を指します。Pythonは実行時に型を判断しています。他の動的型付け言語としては、RubyやJavaScriptがあります。反対に、変数の型を事前に宣言する必要がある静的型付け言語としてはC/C++, C#, Java, Goなどがあります。
変数の型を事前に宣言しない言語
インデントによる文のグルーピング
Pythonでは文のグルーピングはインデント(字下げ)で行われます。これは、例えばJavaのように{}を使用しないということを意味します。
文のグルーピングはインデントで行われる
モジュールとパッケージによる再利用
Pythonでは、よく使う処理やクラスを整理、管理したいときに、モジュールとパッケージを利用することで汎用性のあるコードを再利用することが可能です。
汎用性のあるコードを再利用できる
インタープリタ型言語
インタープリタ型言語とは、プログラムの命令を一つずつ、機械語に解釈しながら実行する方式のことを指します。コンパイルとリンクが不要であり、またPythonには対話モード(インタラクティブモード)という機能もあり、これによりインタープリタ上で、そのままPythonプログラムを入力・実行することが可能です。
なお、コンパイラ型言語として知られるC/C++, Javaなどは、ソースコードを一旦機械語に翻訳し、その機械語になったプログラムを実行します。ただし、Javaの場合は少し特殊で、JavaコードはまずJava Virtual Machine (JVM)が理解できるバイトコードにコンパイルされ、このバイトコードは実行時に機械語に変換されます。
インタープリタ型言語の欠点としては、実行される度にプログラム中の各ステートメントを分析しなければならないため、プログラムの処理性能がコンパイラ型言語に比べて低くなりやすいという点が挙げられます。
- コンパイルとリンクが不要
- 対話的に使うことが可能
- コンパイラ型言語に比べると処理が遅い