🔥

[Python]便利な組み込み関数チートシート

2023/07/04に公開

はじめに

Pythonには様々な組み込み関数が用意されており、これらを活用することで様々な処理を効率的に行うことができます。以下に便利な組み込み関数一覧を纏めました。
※随時更新中

組み込み関数一覧

  1. len(): シーケンス(リストや文字列など)の要素数を返します。

    list_data = [1, 2, 3, 4, 5]
    print(len(list_data))  # 5
    
  2. type(): 引数の型を返します。

    print(type(123))  # <class 'int'>
    print(type('hello'))  # <class 'str'>
    
  3. print(): 引数を標準出力に表示します。

    print("Hello, world!")
    
  4. sorted(): イテラブル(リストなど)の要素をソートした新しいリストを返します。

    list_data = [5, 2, 3, 4, 1]
    print(sorted(list_data))  # [1, 2, 3, 4, 5]
    
  5. max(), min(): イテラブルの中で最大または最小の要素を返します。

    list_data = [5, 2, 3, 4, 1]
    print(max(list_data))  # 5
    print(min(list_data))  # 1
    
  6. sum(): イテラブルの全ての要素の合計値を返します。

    list_data = [5, 2, 3, 4, 1]
    print(sum(list_data))  # 15
    
  7. range(): 連続する整数のシーケンスを生成します。

    for i in range(5):
        print(i)  # 0, 1, 2, 3, 4
    
  8. all(): 全ての要素が真(True)であるかどうかを調べます。全ての要素が真であればTrueを、偽(False)を含む場合はFalseを返します。

    print(all([True, True, True]))  # True
    print(all([True, False, True]))  # False
    
  9. any(): 一つでも真(True)の要素があるかどうかを調べます。真の要素が一つでもあればTrueを、全ての要素が偽(False)である場合はFalseを返します。

    print(any([False, False, True]))  # True
    print(any([False, False, False]))  # False
    
  10. enumerate(): イテラブルのインデックスと値をタプルとして返す列挙オブジェクトを生成します。これはループの中で要素とそのインデックスを同時に取得したい場合に便利です。

    for i, value in enumerate(['a', 'b', 'c']):
        print(i, value)  # 0 a, 1 b, 2 c
    
  11. zip(): 複数のイテラブルから同時に要素を取り出すためのイテレータを作成します。

    for a, b in zip([1, 2, 3], ['a', 'b', 'c']):
        print(a, b)  # 1 a, 2 b, 3 c
    
  12. reversed(): シーケンスを逆順にしたイテレータを返します。

    for i in reversed([1, 2, 3, 4, 5]):
        print(i)  # 5, 4, 3, 2, 1
    
  13. map(): 関数とイテラブルを引数に取り、イテラブルのすべての要素に関数を適用した結果を返す関数です。

numbers = [1, 2, 3, 4]
squared = list(map(lambda x: x**2, numbers))  # [1, 4, 9, 16]
  1. filter(): 関数とイテラブルを引数に取り、関数の結果が真である要素のみをフィルタリングします。
numbers = range(-5, 5)
negatives = list(filter(lambda x: x < 0, numbers))  # [-5, -4, -3, -2, -1]
  1. sorted(): イテラブルを引数に取り、その要素をソートした新たなリストを返します。さらにキーワード引数としてkeyを指定すると、ソートの基準をカスタマイズすることもできます。
words = ['banana', 'apple', 'cherry']
sorted_words = sorted(words)  # ['apple', 'banana', 'cherry']
sorted_by_length = sorted(words, key=len)  # ['apple', 'cherry', 'banana']
  1. reduce(): functoolsモジュールの一部ですが、便利な関数なのでここで紹介します。イテラブルの要素全体に対して累積的な操作を行うことができます。
from functools import reduce
numbers = [1, 2, 3, 4]
product = reduce((lambda x, y: x * y), numbers)  # 24

Discussion