01.Pythonベース-組み込み関数


🌈 組み込み関数のクリーンアップ

  • 内蔵関数はモジュールとは異なり、インポートする必要はありません.そのため、設定する必要はありません.

    🔥 abs(number)


    🔥 divmod(num1,num2)


    🔥 dir(object)


    🔥 eval(string)


    🔥 enumerate(iterable)


    🔥 all(iterable)


    🔥 any(iterable)


    🔥 sorted(iterable)


    🔥 zip(iterable)


    🔥 filter(fn, iterable)


    🔥 map(fn, iterable)


    🔥 isinstance(object, class)


    🔥 chr(i)


    🔥 hex(int)


  • 1. abs(number)

  • の数値を入力し、その絶対値
  • を返します.
    ✍🏻 python
    num = -7
    print(abs(num)) # 7

    2. divmod(num1,num2)

  • 2の数字を入力、aをbで割った後、シェアと残りの部分をtuple形式の関数
  • に返す.
    ✍🏻 python
    print(divmod(7, 3)) # (2, 1)
    print(divmod(10, 2)) # (5, 0)
    print(divmod(87, 7)) # (12, 3)

    3. dir(object)

  • dirは、オブジェクト自体が有する変数または関数
  • を表示する.
    ✍🏻 python
    print(dir([1, 2, 3])) #['append', 'count', 'extend', 'index', 'insert', 'pop',...]
    print(dir({'1':'a'})) # ['clear', 'copy', 'get', 'has_key', 'items', 'keys',...]

    4. eval(string)

  • 実行可能文字列を入力値を返す関数
  • ✍🏻 python
    print(eval('1+2'))   # 3
    print(eval("'hi' + 'a'"))   # 'hia'
    print(eval('divmod(4, 3)'))   # (1, 1)

    5. enumerate(iterable)

  • の重複可能なデータ型(リスト、凡例、文字列)を入力し、インデックス値を含むオブジェクト
  • を返します.
    ✍🏻 python
    # 리스트에서 활용
    for i, name in enumerate(['body', 'foo', 'bar']):
        print(i, name)    
    # 0 body
    # 1 foo
    # 2 bar
    # 딕셔너리에서 활용
    dict_enumerate = {"name":"jaewon", "age":"10", "location":"seoul", "birth":"03-03"}
    for i, k in enumerate(dict_enumerate):
        print(i, k)
    # 0 name
    # 1 age
    # 2 location
    # 3 birth

    6. all(iterable)

  • を入力すると、データ型xが繰り返され、xのすべての要素が本物である場合、偽物が1つある場合、エラー
  • が返されます.
  • すなわち、もし1つが偽物であれば、それは間違いであり、すべての人が本当である場合にのみ、本当の
  • である.
    ✍🏻 python
    a = [1,2,3,4,5]
    b = [1,2,0,4,5]
    c = [False, True, 1, 2, 3]
    d = [True, 1, "", 2]
    e = [1, 2, "a", True, "false"]
    print(all(a)) # True
    print(all(b)) # False
    print(all(c)) # False
    print(all(d)) # False
    print(all(e)) # True

    7. any(iterable)


    入力パラメータは
  • 反復可能なデータ型xであり、そのうちの1つの要素が本物である場合、エラー
  • はすべて偽である場合にのみ返される.
  • 、すなわち、1つが本当であれば、すべてが偽物である場合にのみ、エラー
  • が発生する.
    ✍🏻 python
    a = [1,2,3,4,5]
    b = [1,2,0,4,5]
    c = [False, True, 1, 2, 3]
    d = [True, 1, "", 2]
    e = [1, 2, "a", True, "false"]
    print(any(a)) # True
    print(any(b)) # True
    print(any(c)) # True
    print(any(d)) # True
    print(any(e)) # True

    8. sorted(iterable)

  • ソート()関数は、ソースファイル
  • を変更することなく、繰り返し可能なデータに使用することができる.
  • はまた、()関数を並べ替え、入力された要素を並べ替え、結果をリスト
  • に戻すこともできる.
  • とは逆に、リストデータ型についてはsort()関数がリスト自体をソートするが、結果
  • は返さない.
  • と比較して、sort()関数はlistでのみ使用可能である
  • ✍🏻 python
    iterable_list = [5,4,3,2,1]
    iterable_tuple = ("z","c","a","p")
    iterable_dict = {"d":1 , "b":20 , "u":31 , "k":42}
    iterable_str = "4321"
    print(sorted(iterable_list)) # [1, 2, 3, 4, 5]
    print(sorted(iterable_tuple)) # ['a', 'c', 'p', 'z']
    print(sorted(iterable_dict)) # ['b', 'd', 'k', 'u']
    print(sorted(iterable_str)) # ['1', '2', '3', '4']
    print(iterable_list) # [5, 4, 3, 2, 1]
    print(iterable_tuple) # ('z', 'c', 'a', 'p')
    print(iterable_dict) # {'d': 1, 'b': 20, 'u': 31, 'k': 42}
    print(iterable_str) # 4321
    li = [300,99,1,9,4,10]
    print(li.sort()) # None
    print(li) # [1, 4, 9, 10, 99, 300] -> list 자체를 바꿔버림

    9. zip(iterable)

  • 要素は、同じ数のデータ型に対してバンドル機能を果たす関数
  • である.
    ✍🏻 python
    print(list(zip([1, 2, 3], [4, 5, 6]))) # [(1, 4), (2, 5), (3, 6)]
    print(list(zip([1, 2, 3], [4, 5, 6], [7, 8, 9]))) # [(1, 4, 7), (2, 5, 8), (3, 6, 9)]
    print(list(zip("abc", "def"))) # [('a', 'd'), ('b', 'e'), ('c', 'f')]

    10. filter(fn, iterable)

  • 最初のパラメータは関数で、2番目のパラメータは繰り返し可能なデータ型で、順次関数に入ります.
  • 繰り返し可能なデータ型要素は、関数に順次入力後、関数内の条件に対応する要素のみがフィルタリングされ、
  • に戻る.
    ✍🏻 python
    # 일반 함수를 이용했을 때,,
    # 0보다 큰 숫자만 리턴해주는 함수 기능
    def positive(l): 
        result = [] 
        for i in l: 
            if i > 0: 
                result.append(i) 
        return result
    print(positive([1,-3,2,0,-5,6])) # [1,2,6]
    # 내장함수 filter를 이용했을 때,,
    # 0보다 큰 숫자만 리턴해주는 함수 기능
    def positive(x):
        return x > 0
    print(list(filter(positive, [1, -3, 2, 0, -5, 6])))  # [1,2,6]
    # filter와 lambda 조합 활용 예시,,
    # 0보다 큰 숫자만 리턴해주는 함수 기능
    list(filter(lambda x: x > 0, [1, -3, 2, 0, -5, 6]))  # [1,2,6]

    11. map(fn, iterable)

  • の1番目のパラメータの関数には、2番目のパラメータの重複可能なデータ型の要素
  • が順次入力.
  • 順次入力された要素は、関数機能で適用する
  • に戻る.
    ✍🏻 python
    # 함수로 표현 했을 때,
    def two_times(numberList):
        result = []
        for number in numberList:
            result.append(number*2)
        return result
    result = two_times([1, 2, 3, 4])
    print(result)  # [2, 4, 6, 8]
    # 내장함수 map을 사용했을 때,
    def two_times(num):
        return num * 2
    print(list(map(two_times, [1, 2, 3, 4])))  # [2, 4, 6, 8]
    # map과 lambda 조합 활용 예시,,
    print(list(map(lambda a: num*2, [1, 2, 3, 4]))) # [2, 4, 6, 8]

    12. isinstance(object, class)

  • は、1番目の入力のオブジェクト(インスタンス)が2番目の入力のクラスのインスタンスであるか否かを判定し、もし本当であればエラー
  • を返す.
    ✍🏻 python
    class Person: pass # 클래스 선언
    a = Person() # a는 객체이자 Person()의 인스턴스
    print(isinstance(a, Person)) #True

    13. chr(i)


    関数
  • は、Askyコードを受信し、そのコードに対応する文字を出力する.
    ✍🏻 python
    print(chr(97)) #'a'
    print(chr(48)) #'0'

    14. hex(int)

  • の整数値を入力し、16進数に変換して
  • を返します.
    ✍🏻 python
    print(hex(234))  # '0xea'
    print(hex(3))  # '0x3'