まず結論
関数は、処理に名前をつけてまとめる仕組みです。
def greet():
print("こんにちは")
greet()
このコードでは、greet という関数を作っています。
最後の greet() で、その関数を呼び出しています。
こんなときに読む記事です
次のようなところで止まった人向けです。
defが何をしているのか分からないgreet()の()がなぜ必要なのか分からない- 関数を作ることと呼び出すことの違いを知りたい
ここでは、引数やreturnの詳しい話までは扱いません。
絵で見るなら
関数は、名前のついた小さな作業台のようなものです。
def greet(): で、greet という名前の作業台を用意します。
greet() と呼ぶと、その作業台の中に書いた処理が動きます。
defで関数を作る
関数を作るときは、def を使います。
def say_hello():
print("Hello")
この時点では、関数を作っただけです。
中の print("Hello") は、まだ実行されません。
関数名で呼び出す
関数を動かすには、関数名に () を付けて呼び出します。
say_hello()
この行で、関数の中に書いた処理が実行されます。
何度も呼べる
関数は、同じ処理を何度も呼び出せます。
say_hello()
say_hello()
同じ print("Hello") を何度も書かなくて済みます。
よくある勘違い
関数は、作っただけでは動きません。
def greet():
print("こんにちは")
このコードだけだと、greet という関数を用意しただけです。
実際に動かすには、あとで greet() と呼び出します。
読み方のコツ
関数を見るときは、次の2つを分けて読みます。
def 関数名(): は、関数を作る
関数名() は、関数を呼び出す
まずは「作る場所」と「呼ぶ場所」を探すだけで大丈夫です。
手を動かすミニ練習
関数を作って、2回呼び出してみましょう。
def cheer():
print("がんばろう")
cheer()
cheer()
関数を呼び出した回数だけ、中の処理が動きます。
3行まとめ
- 関数は、処理に名前をつけてまとめる仕組み。
- defで関数を作り、関数名に()を付けて呼び出す。
- 同じ処理を何度も書かずに済む。