ymLogs

学びとゲームとITと。

【Python】【解説】初心者のための備忘録 #3【def】【組み込み関数】


初心者向けのPython備忘録 第三弾(#3)です。f:id:ymLogs:20200831223849p:plain

今回(#3)では

 について書いていきます。

 

#1から順番に読んでいただくとPythonの基本的な文法がわかるようになっています。

良ければ合わせてどうぞ。

#1

ymlogs.hateblo.jp

#2

ymlogs.hateblo.jp

 

 

 

組み込み関数

Pythonに用意されている「組み込み関数」があります。

#1、#2で紹介した

print()、int()、float()、str()、len()、input()

なども組み込み関数の一種です。

 

↓ 全69種類ある組み込み関数は以下で確認できます

docs.python.org

 

その中でわかりやすいものだけ紹介しておきます。

abs

()内の数値の絶対値(absolute value)を返します。

 

入力例

print(abs(-4.3))

 

実行結果

4.3

 

max

リストの中で最も大きい数値を返します。

 

入力例

print(max([1,9,6,7]))

 

実行結果

9

 

min

リストの中で最も小さい数値を返します。

 

入力例

print(min([1,9,6,7]))

 

実行結果

1

 

sum

リストの数値の和を返します。

 

入力例

print(sum([1,9,6,7]))

 

実行結果

23

 

eval

文字列を式やリストとして実行します。

 

入力例

print(eval("1+2"))

print(eval("[1,2,3,4]")[1])

 

 

実行結果

3

2

 

 

関数の定義(def)

組み込み関数に加え、関数を自分で定義(define)して使うこともできます。

defを使って定義する方法を紹介します。

これを利用して入力する量を節約できる場合は積極的に使っていきましょう。

 

1変数関数の定義

基本的なdefの使い方

def 関数名(変数):

    命令

 

例として、入力した変数xの二乗を返す関数「aiueo」を定義してみます。

返したい数値などをreturnの直後に入れます。

真偽を返したい場合には return True のように記述します。

 

入力例

def aiueo(x):

    return(x*x)

print(aiueo(12))

print(aiueo(-8))

 

実行結果

144

64

 

aiueo という自分で定義した関数が機能していることが分かるかと思います。

 

変数を必要としない関数の定義

関数の中にxといった変数を必要としない場合、()の中身を空にしておきます。

 

入力例

def abcde():

    print("テストテスト")

abcde()

 

実行結果

テストテスト

 

2変数以上の多変数関数の定義

2変数、3変数などの多変数関数を定義することもできます。

例として、ヘロンの公式をdefしてみましょう。

ヘロンの公式とは、三角形の3辺の長さから、その面積を導出する公式です。

ja.wikipedia.org

 

入力例

def heron(a,b,c):
    s=(a+b+c)/2
    S=(s*(s-a)*(s-b)*(s-c))**(1/2)
    return(S)

print(heron(3,4,5))
print(heron(6,6,6))

 

出力結果

6.0
15.588457268119896

 

 global変数

defの内部で使用した変数は、同じ変数名を使ったとしてもdefの外で使ったものとは別のものとして扱われます

defの外で使われている変数を使いたい場合、

global 変数名 と宣言しておく必要があります。

 

入力例

x=3

def aaa(a):

    global x #defの外のxを使えるようにする

    return x*a

print(aaa(5))

 

実行結果

15

 

 

 

#3はここまで。

#1~#3でだいたい基本的な部分を押さえることができたかなと思います。

#4以降は未定です。

ここまで読んでいただいた方、有難うございます。

ぜひ実践してみてください。