4章Pythonのデータ型

データを用いた科学計算を効果的に行うには、データの保存と操作がどのように行われるのかを理解する必要があります。この章では、まずPythonがデータ配列を扱う方法を概説し、NumPyがそれをどのように改善するかを説明します。この違いは、本書の多くの内容を理解する上での基礎となります。

動的な型付けは、ユーザがPythonに惹かれる使いやすさの1つです。CやJavaのような静的型付き言語では、各変数を明示的に宣言する必要がありますが、Pythonのような動的型付き言語はこの宣言を行いません。例えば、Cでは次のように型の指定が必要です。

/* Cコード */
int result = 0;
for(int i=0; i<100; i++){
    result += i;
}

一方Pythonでは、次のように書けます。

# Pythonコード
result = 0
for i in range(100):
    result += i

注目すべき違いは1つです。Cでは、各変数のデータ型が明示的に宣言されますが、Pythonでは型が動的に推測されます。これは、変数に任意の種類のデータを代入できることを意味します。

# Pythonコード
x = 4
x = "four"

ここでは、変数xの内容を整数から文字列に切り替えました。C言語で同じことを行うと、(コンパイラの設定に応じて†1)コンパイルエラーや他の意図しない結果につながります。

[†1] 訳注:このエラーは、文字へのポインタである"four"intの変数xに代入しているので、多くのコンパイラでは警告が出力されるが、例えばGCCやClangでは、-Wno-int-conversionオプションを付けるとこの警告が抑止される。 ...

Get Pythonデータサイエンスハンドブック 第2版 ―Jupyter、NumPy、pandas、Matplotlib、scikit-learnを使ったデータ分析、機械学習 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.