はじめに
こんにちは。風助です。
今回はdef文について書いていきます。
def文とは
def文は関数を自作するためのものです。
Pythonはもともと多くの組み込み関数がありますが、どうしても関数を自作したいときもあります。
簡単な計算を何度も使いまわしたいときなどですね。
関数を自作するのは簡単なので、ぜひ覚えていきましょう。
関数を自作する方法は2種類あります。
def文とlambda式。今回はdef文について書いていきます。
def文の書き方、使い方
ではまず書き方から。
def fun(n):
"""引数を2乗するだけの関数"""
Ans = n ** 2
print(Ans)
print("-----")
return Ans
このコードは引数(n)を2条するだけの関数です。
一番初めのdefでこれから関数を定義すると宣言します。
そして関数の名前(今回はfun)を書き、かっこのなかに引数を指定します。
この時、引数はいくつでもOKですし、デフォルト値の設定も可能です。
そのあとが関数本体になります。
関数本体の一番初めにはドキュメンテーション文字列を配置できます。
このドキュメンテーション文字列にはある程度ルールがあります。関数の説明などを書きます。
そのあとには実際に行われる様々な計算などを書きます。
ここは皆さんの自由に複雑な計算式でも書いてください。
最後に計算結果の出力方法について。
関数を作ってもその計算結果を出力する必要があります。
今回の関数では最後にprint()とreturnがあります。
print()はいままで使っているprint()と同じ動きをします。
returnは値を返しながら元のコードに復帰(関数を抜ける)します。
returnが指定されてないとNoneを返します。
書き方としてはこんなものでしょうか。もっといろいろ考えることはありますが、最低限の書き方は書けたと思います。
次は使い方。コールの仕方は組み込み関数と同じです。
def fun(n):
"""引数を2乗するだけの関数"""
Ans = n ** 2
print(Ans)
print("-----")
return Ans
fun(5)
f = fun(3)
print(f)
この場合の出力は以下のようになります。
25
-----
9
-----
9
今回の関数にはもともとprint関数が入っているので関数を実行するだけで出力されます。
そのあとの変数(f)に代入しているところについて。
この時、代入した時点で関数が実行されています。そのため3の2乗である9、そして”—–“がプリントされます。
その後、print(f)のところでは返り値、つまりreturnの値のみを出力しています。
終わりに
今回はdef文について書きました。
皆さんの参考になると幸いです。
コメント
Some really howling work on behalf of the owner of this web site, absolutely outstanding subject material.