Python 言語を学ぼう-変数・関数・クラス編①-

本記事では Python 言語について勉強していきます。また本記事はスタートアップ記事を読んでいることが前提となります。まだ読んでいない方は、必ずこちらのサイトを参考にしてください。

パソコンについて学ぼう-Pythonを学ぶ以前にやるべきこと-
本記事では、Python を学ぶ以前にやるべきこと、という内容で解説していきます。本記事からプログラミングを始めた、という方は、こちらのサイトを参考にしてください。 プログラミング以前の話 まず、プログラミングを学ぶ前に、パソコンについて勉...

また、この章に関しては、大変難しい内容となっているので、 4,、5 パートに分けて解説します。

今回は概要についてのみです。

変数の概要

プログラミングでは変数という概念が出てきます。プログラミングにおける変数とは、メモリにデータを移す作業になります。変数を定義することで、メモリのある部分にデータを保管します。保管した場所の名前は変数名になります(詳細は次の章)。実は前回の章でも出てきましたが、変数は以下のように設定します。

x: int = 1

変数を設定すると、その変数名でメモリ内にデータが保存されます。その後、その変数名を使って保存されたデータを参照または更新することができます。以下の例を見てみましょう。

x : int= 1
print("x 設定後: ", x)

y: int = x + 1
print("y 設定後: ", y)

x: int = x + y
print("x 更新後: ", x)

このコードを実行すると、 x を設定したとき、 y を計算したときに、 x を呼び出して 1 を足したとき、 x を更新したときにどのような挙動を示すのか確認することができます。 x を設定後に 1 、 y を設定後に 2、 x の更新後に 3 が出力されていることがわかると思います。

以上、変数について述べましたが、変数の設定方法は奥が深いです。私も現在勉強中ではございますが、設定方法について詳しく知りたい方はこちらの本をお読みください。C 言語なのが難点ですが、変数の設定方法については学ぶことができるかと思います。

リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)

なお、私の記事では、この本を参考にして変数版の記事を書かせていただきます。

関数の概要

変数を設定すると、そのデータはメモリ内に保存されます。しかし、メモリには保存できるデータの限界が存在します。したがって、過度に多くの変数を設定すると、コンピュータ内のメモリが満タンになってしまいます。(Pythonでは、このような場合にエラーが出力されます。)詳しくは以下の記事を参考にしてください。

したがって、設定した変数が後の処理で不要である場合、その変数を削除することがコードの効率的な実行につながります。この考え方が関数を導入するに至りました。関数はプログラミング言語によって記述の方法が異なります。Python では以下のように記載します。

def 関数名(変数1, 変数2, ・・・):
    処理1    
    処理2
      ・
      ・
      ・
    return 返す値 # 何か値を返したいときに記載

使用例を見てみましょう。

def sum_func(x, y): # x と y は int 型か float 型です。
   z = x + y # x, y, z は int 型か float 型です。
   return z # z は int 型か float 型です。

a: int = 1
b: int = 2
c = sum_func(a, b)
print("a: ", a, "b, : ", b,  ", c: ", c)

ではここで x, y についてどうなったか確認してみましょう。以下のコードを実行してみてください。

print("x: ", x, "y, : ", y)

「NameError: name ‘x’ is not defined」と表示されているかと思います。このエラーメッセージは、変数「x」が定義されていないことを示しています。つまり、関数の中で定義されている変数は、計算中のみ存在し、関数の実行後には削除されていることを意味しています。(実際は削除されているわけではないのですが、混乱を招くため、別の記事で言及する予定です。本記事では削除されたものとして扱います。)

以上のように、関数はその後の処理で不要になった変数を削除する機能を持っています。また、関数はプログラミングにおいて他にも多くの必要な能力を兼ね備えています。しかし、本記事の趣旨からはやや逸脱するため、以降の記事で詳しく説明します。

クラスの概要

関数を定義すると、変数が削除されてしまうことが分かりました。これは処理によっては不都合な結果を生み出します。例えば、税込みと税抜きの計算を行うプログラムを記載する場合を考えてみましょう。税込みと税抜きの計算は以下のように書くことになります。

def  including_tax_func(x):
   y = x * 1.10
   return y

def  without_tax_included(x):
   y = x / 1.1o
   return y

このように、関数を使っても記述することができますが、税の値段は一緒なので、この変数を関数内で共通で使用したほうが新しい関数を作ることになった場合、楽になります。そこで、関数を一つのグループとしてまとめる、という概念が生まれました。これを「クラス」といいます。

クラスについて理解するためには、関数の理解が必須です。クラスについては、後の記事で詳しく解説しますが、今の段階では関数を一つにまとめたものと理解してください。

まとめ

本記事では、変数、関数、クラスの概要について勉強しました。これから 4、5 パートに分けて記事を作成していきます。大変ですが、ゆっくり頑張っていきましょう!!!

[次の記事]

タイトルとURLをコピーしました