タイトル画像
琴葉茜

今回は「組み込み関数」について紹介するよ!

解説画像1
琴葉葵

組み込み関数?

琴葉茜

組み込み関数は、Pythonに最初から用意されている関数のことだよ!

琴葉茜

だけど、実はもう既にいくつかは紹介していて、例えば「print()」や「range()」とかも組み込み関数の一種なんだよね

琴葉葵

えぇ!?ということは、一番最初に覚えたのが組み込み関数だったの!?

琴葉茜

そういうことだね!

琴葉茜

とはいえ、これまで組み込み関数をまとめて紹介する機会がなかったから、ここではよく使われるものだけでも紹介しようと思うよ!

琴葉葵

お願いします...!!

琴葉茜

まず最初は、データの長さを返してくれる「len()」

解説画像2
琴葉葵

配列型の問題に出てきた関数だね!
要素の長さを返してくれるんだよね?

琴葉茜

そうだね!
だけど、別に配列だけじゃなくて、文字列の長さや辞書の要素数も返してくれるよ!

琴葉葵

そうだったんだ!

琴葉茜

次に紹介するのは「最小値」と「最大値」を返す「min()」と「max()」

解説画像3
琴葉茜

実はこれ、数値だけじゃなくて、文字列の最小値と最大値も返してくれるんだよね

琴葉葵

なんと...!!
文字列の最小値と最大値ってどういうこと?

琴葉茜

文字列の最小値と最大値は、アルファベット順で最も小さい文字と最も大きい文字のことだよ

琴葉葵

あぁ、そういえば、配列型の「.sort()」の時もアルファベット順で並び替えられてたから、あれと同じなんだね!

琴葉茜

そういうこと
だけど、数値と文字列が混ざってるときは、エラーになるから注意してね!

琴葉葵

りょーかい!!

琴葉茜

その2つとセットで覚えとくと良いのが、配列内の数値を合計してくれる「sum()」

解説画像4
琴葉葵

もしかして、これも文字列を持った配列に対して使えるの?

琴葉茜

これについては残念ながらエラーになるんだよね
もし文字列を持った配列を合成したい場合は「"".join(文字列を持った配列)」を使えば良いよ!

琴葉葵

ほぅほぅ

琴葉茜

次は配列の中身を逆順にする「reversed()」

解説画像5
琴葉葵

トランプの山札をひっくり返すイメージだね

琴葉茜

そういうこと!
ちなみに、文字列に対しても使えるから、文字列を逆順にしたいときにも便利だよ!

琴葉葵

「いおあはのとこ」!!

琴葉茜

条件式を考える時に便利なのが、全ての要素が条件を満たしているかを返す「all()」と、いずれかの要素が条件を満たしているかを返す「any()」

解説画像6
琴葉葵

条件を満たしているかっていうのは、「True」か「False」ってこと?

琴葉茜

そうだね!
配列で複数の真偽値を管理してる時に、その要素を活用したいときに便利かな

琴葉茜

最後に紹介するのは、ちょっとマニアックだけど存在は知っておいてほしい「ord()」と「chr()」

解説画像7
琴葉茜

「ord()」は、文字を対応する数値に変換する関数で、「chr()」は数値を対応する文字に変換する関数だよ

琴葉葵

たしか、Webカメラを使った時に「キーボードで入力された文字が指定した文字か判定するため」に使ってたよね?

琴葉茜

コンピュータは文字を数値で管理していて、例えば「A」は65、「B」は66、「a」は97、「b」は98みたいに対応しているんだよね

琴葉茜

キーボードで入力された時の情報もコンピュータが理解できる数値で送られてるから、それに合わせるために使う必要があるって感じ

琴葉葵

なかなか使う機会は少ないかもだけど、存在自体は知っておいた方が良さそうだね!

琴葉葵

...ん?もしかして、文字の順番ってこの数値で決まってる??

琴葉茜

お!よく気づいたね!!
「sorted()」とかで文字の順番が決まるのはこの数値の順番に従ってるからなんだ!

琴葉葵

やっぱり!!

琴葉茜

他にもまだまだ沢山の組み込み関数があるから、興味が出たらまた調べてみてね!

琴葉茜

最後に、これまで登場した組み込み関数をまとめて表にしておくよ

関数機能出力
print()画面に文字や結果を表示するprint("Hello")Hello
type()データの種類(型)を調べるtype(10)<class 'int'>
str()データを「文字列」に変換するstr(100)"100"
int()データを「整数」に変換するint("5")5
float()データを「小数」に変換するfloat("3.1")3.1
input()キーボードからの入力を受け取る(文字列として取得)input()(入力された文字)
abs()数値の「絶対値(マイナスをとった純粋な距離)」を出すabs(-5)5
enumerate()forループでインデックス(番号)と要素を同時に取り出すfor i, v in enumerate(["a", "b"]):(0 "a"、1 "b" の順に処理)
zip()複数の配列を同時にループで回してペアで取り出すfor x, y in zip([1, 2], [3, 4]):(1 3、2 4 のペアで処理)
round()小数を指定した桁数で四捨五入(丸め)するround(3.1415, 2)3.14
sorted()元のデータを壊さずに、新しく綺麗に並び替えた配列を作るsorted([3, 1, 2])[1, 2, 3]
len()文字列の長さや、配列の要素の数を数えるlen("Python")6
sum()配列(リスト)の中身をすべて合計するsum([10, 20, 30])60
max()配列(リスト)の中から一番大きいデータをみつけるmax([5, 9, 2])9
min()配列(リスト)の中から一番小さいデータをみつけるmin([5, 9, 2])2
reversed()配列(リスト)などの順序を逆さまにしてループ処理するfor x in reversed([1, 2, 3]):(3、2、1 の順に処理)
all()配列(リスト)の中身が「すべてTrue」ならTrueを返すall([True, False, True])False
any()配列(リスト)の中に「1つでもTrue」があればTrueを返すany([True, False, True])True
ord()指定した文字を「文字コード(コンピューターの裏側の数字)」に変換するord("A")65
chr()「文字コード(数字)」を対応する文字に変換するchr(65)"A"
← 横にスクロールして確認しよう! →