LoginSignup
0
0

Pythonプログラムの基本(クラスや関数の使用)

Last updated at Posted at 2023-09-11

前提など

対象: 
 ・Python初学者が対象
 ・過去記事 もチラ見してください。

開発環境: Windows、Visual Studio Code、Python3系
       前々回構築した開発環境で学習を進めます。
       ※Windows10での使用を前提とするが、他OSでも大きく変わらないはずです。

前提: 初学者は公式ドキュメントを元に学習すべきであるが、
    社内勉強会を前提としているため、基本を掻い摘んで駆け足で説明します。
    ★Python公式ドキュメントへのLINK★

今回のテーマ

関数、クラス、メソッド の使い方を勉強します。

※今回もPythonというかプログラムの基本のおさらいです。

言い訳
クラスについて説明するには、まずオブジェクト指向の説明が必要なのですが
オブジェクト指向を正しく説明するとそ、れだけで勉強会を数回やらないと理解出来ないのでざっくり以下。
クラスとは学校のクラスと同じです。
同じ様な子が集まってるくらいでお茶を濁して進めますよ。

クラスとは

クラスとは、要素(属性)や 振る舞い(操作)を まとまりとして定義したものです。

様々なプログラミング言語で使われています。
ひとまず現段階では、要素は変数、振る舞いは関数と思っておいてください。

image.png

メソッドとは

前回記事にて「関数」についてサラッとやりましたが、メソッドとはホボ関数と同じと思って良いです。

image.png
メソッドと関数では何が違うのか?
メソッドとは
・クラス内で定義された関数
・オブジェクトの属性として参照される関数
前回紹介した list もメソッドに使えます以下を試してください。
コード1:

n_list = ["a","b"]
print( n_list )

コード2:

n_list.append("c")
print( n_list )

解説
コード1 の1行目は、 listの設定を行っています。
コード2 の1行目は、 appendで listに「c」を追加しています。

関数を実装してみよう

まずは関数を実装してみよう。 test_func.py というファイル名で実装し、実行して確認してください。
def test_func():
    print('call test_func')

test_func()

解説
1行目 defが 関数の宣言
1行目~2行目 この2行が関数
末尾行の「test_func()」は関数を呼び出しています。

関数に引数をつけてみよう
先ほどのソースコードを以下のように修正し、実行して確認してください。

def test_func(str1, str2):
    print("引数は" + str1 + "" + str2)

test_func("test", "func")

解説
1行目 のカッコ内の「str1,str2」が引数です。
末尾行の関数呼出し時に、「test」 と「func"」を引数として渡しています。

クラスとメソッドを実装してみよう

test_class.py というファイル名で実装し、実行して確認してください。
#クラスの定義
class TestClass:
   # メソッドの定義
   def test_method(str1, str2):
       print("引数は" + str1 + "" + str2)

#### ここからメソッドを呼び出す ###
TestClass.test_method("くらす","めそっど")

解説
2行目 class・・・ が クラスの宣言
4行目 メソッドも def で宣言します。
4行目~5行目 この2行がメソッド
末尾行の「TestClass.test_method("くらす","めそっど")」はメソッドを呼び出しています。
メソッドの呼び出し時は クラス名.メソッド名 で呼び出します。

以下修正中。
他ファイルからクラスのメソッドを呼び出す場合

0
0
3

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0