http://macroscope.world.coocan.jp/ja/edu/ris/bfg/types.html
人が計算機をつかうとき、数値の処理をしたいときと、文字の処理をしたいときがあります。 たとえば、「=」が右辺の値を左辺の変数に代入することだとして、
A = 100 B = 23 print(A+B)「+」が数値のたしざんと解釈され、結果は 123 となります。 しかし、「+」が文字列をつなぐことだとすれば 10023 となるべきでしょう。 Python では、引用符 (「'」または「"」) でくくられたものは文字列だとみなし、 そのときの「+」は文字列をつなぐ操作と解釈されます。
A = "100" B = "23" print(A+B)
このように、プログラミング言語では、数値をいれる変数と、文字をいれる変数との 「変数の型」を区別しなればなりません。
Python でつかわれるおもな変数の型に、つぎのものがあります。
さらに、数学でいうベクトルのように、 いくつもの同類の変数をまとめてあつかうための複合型があります。 「リスト」「データフレーム」「配列」などがでてきますが、でてきたところで説明します。
プログラム言語には、変数の型の区別がきびしいものもゆるいものもありますが、 区別がきびしいばあいは、 あらかじめ変数を宣言する文で型も宣言しておいてからつかうのがふつうです。 (あるいは、変数名のつけかたに約束があって、変数名をみれば型がわかる言語もあります。)
ところが、Python は、型の区別がけっこうきびしいくせに、 変数とその型を宣言する文がありません。(あるのかもしれませんが初歩の教科書には出てきません。) 変数の型は、その変数を最初に実際につかうところで決まります。 そして、そのあとでその変数をちがう型でつかおうとすると、エラーになったり、 予想外の動作をしたりすることがあります。
これはおそらく Python が短いプログラムを書くための言語としてつくられたせいです。 Python で長いプログラムをつくることは おすすめできないのです。 しかし、かぎられた学習時間で、複数のプログラム言語を習得するのもむずかしいことなので、 妥協として、この授業では、Python には適さない長さのプログラムも、Python であつかってしまいます。