[Python] 내장 함수

GilLog·2020년 12월 15일
0

Python

목록 보기
8/18

🙆‍♂️ import 🙇‍♂️

점프 투 파이썬

파이썬 - 기본을 갈고 닦자!

내장 함수

Python에서 내장 함수는 외부 Module과 달리 import없이 바로 사용할 수 있다.

abs()

abs(x)는 어떤 숫자를 입력받았을 때, 그 숫자의 절댓값을 돌려주는 함수이다.

all()

all(x)반복 가능한(iterable) 자료형 x를 입력 인수로 받으며 이 x의 요소가 모두 참이면 True, 거짓이 하나라도 있으면 False를 돌려준다.
반복 가능한 자료형 : for문으로 그 값을 출력할 수 있는 것을 의미
리스트, 튜플, 문자열, 딕셔너리, 집합

all([1, 2, 3])
# True
# 리스트 자료형 [1, 2, 3]은 모든 요소가 참이므로 True를 돌려준다.

all([1, 2, 3, 0])
# False
# 리스트 자료형 [1, 2, 3, 0] 중에서 요소 0은 거짓이므로 False를 돌려준다.

all([])
# True
# 만약 all의 입력 인수가 빈 값인 경우에는 True를 리턴한다.

any()

any(x)반복 가능한(iterable) 자료형 x를 입력 인수로 받으며 이 x의 요소 중 하나라도 참이 있으면 True를 돌려주고, x가 모두 거짓일 때에만 False를 돌려준다.
all(x)의 반대

any([1, 2, 3, 0])
# True
# 리스트 자료형 [1, 2, 3, 0] 중에서 1, 2, 3이 참이므로 True를 돌려준다.

any([0, ""])
# False
# 리스트 자료형 [0, ""]의 요소 0과 ""은 모두 거짓이므로 False를 돌려준다.

any([])
# False
# 만약 any의 입력 인수가 빈 값인 경우에는 False를 리턴한다.

chr(i)

chr(i)는 아스키(ASCII) 코드 값을 입력받아 그 코드에 해당하는 문자를 출력하는 함수이다.

dir()

dir은 객체가 자체적으로 가지고 있는 변수나 함수를 보여 준다.

# 리스트와 딕셔너리 객체 관련 함수(메서드)를 보여 주는 예
dir([1, 2, 3])
# ['append', 'count', 'extend', 'index', 'insert', 'pop',...]

dir({'1':'a'})
# ['clear', 'copy', 'get', 'has_key', 'items', 'keys',...]

divmod()

divmod(a, b)는 2개의 숫자를 입력으로 받아, a를 b로 나눈 몫과 나머지를 튜플 형태로 돌려주는 함수이다.

divmod(7, 3)
# (2, 1)
# 7 // 3 = 2, 7 % 3 = 1

enumerate()

enumerate는 "열거하다"라는 뜻으로, 순서가 있는 자료형(리스트, 튜플, 문자열)을 입력으로 받아 인덱스 값을 포함하는 enumerate 객체를 돌려준다.

for i, name in enumerate(['body', 'foo', 'bar']):
    print(i, name)
'''
0 body
1 foo
2 bar
'''

eval()

eval(expression)실행 가능한 문자열(1+2, 'hi' + 'a' 같은 것)을 입력으로 받아 문자열을 실행한 결괏값을 돌려주는 함수이다.

print(eval("'gil'+'log'"))
# gillog

filter

filter 함수는 첫 번째 인수로 함수 이름을, 두 번째 인수로 그 함수에 차례로 들어갈 반복 가능한 자료형을 받는다.

그리고 두 번째 인수인 반복 가능한 자료형 요소첫 번째 인수인 함수에 입력되었을 때 반환 값이 참인 것만 묶어서(걸러 내서) 돌려준다.

#positive.py 
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]

위 예제의 positive 함수는 리스트를 입력값으로 받아 각각의 요소를 판별해서 양수 값만 돌려주는 함수이다.

filter 함수를 사용하면 위 내용을 아래와 같이 간단하게 작성할 수 있다.

#filter1.py
def positive(x):
    return x > 0

print(list(filter(positive, [1, -3, 2, 0, -5, 6])))
# 결과값: [1, 2, 6]

여기에서는 두 번째 인수인 리스트의 요소들이 첫 번째 인수인 positive 함수에 입력되었을때 반환 값이 참인 것만 묶어서 돌려준다.

앞의 예에서는 1, 2, 6만 양수여서 x > 0 문장이 참이되므로 [1, 2, 6]이라는 결괏값을 돌려주게 된 것이다.

앞의 함수는 lambda를 사용하면 더욱 간편하게 코드를 작성할 수 있다.

list(filter(lambda x: x > 0, [1, -3, 2, 0, -5, 6]))
# [1, 2, 6]

hex(x)

hex(x)는 정수 값을 입력받아 16진수(hexadecimal)로 변환하여 돌려주는 함수이다.

print(hex(234))
# '0xea'

id(object)

id(object)는 객체를 입력받아 객체의 고유 주소 값(레퍼런스)을 돌려주는 함수이다.

a = 3
b = a

print(id(a))
print(id(3))
print(id(b))
print(id(5))

'''
140723623176032
140723623176032
140723623176032
140723623176096
'''

input([prompt])

input([prompt])은 사용자 입력을 받는 함수이다.

매개변수로 문자열을 주면 그 문자열은 프롬프트가 된다.
[ ] 기호는 괄호 안의 내용을 생략할 수 있다는 관례 표기법

b = input("Enter: ")
Enter: hi

int(x)

int(x)는 문자열 형태의 숫자나 소수점이 있는 숫자 등을 정수 형태로 돌려주는 함수로, 정수를 입력으로 받으면 그대로 돌려준다.

isinstance(object, class)

isinstance(object, class )첫 번째 인수로 인스턴스, 두 번째 인수로 클래스 이름을 받는다. 입력으로 받은 인스턴스그 클래스의 인스턴스인지를 판단하여 참이면 True, 거짓이면 False를 돌려준다

len(s)

len(s)은 입력값 s의 길이(요소의 전체 개수)를 돌려주는 함수이다.

list(s)

list(s)는 반복 가능한 자료형 s를 입력받아 리스트로 만들어 돌려주는 함수이다.

map(function, iterable)

map(f, iterable)은 함수(f)와 반복 가능한(iterable) 자료형을 입력으로 받는다.

map()은 입력받은 자료형의 각 요소를 함수 f가 수행한 결과를 묶어서 돌려주는 함수이다.

max(iterable)

max(iterable)는 인수로 반복 가능한 자료형을 입력받아 그 최댓값을 돌려주는 함수이다.

min(iterable)

min(iterable)은 max 함수와 반대로, 인수로 반복 가능한 자료형을 입력받아 그 최솟값을 돌려주는 함수이다.

oct(x)

oct(x)는 정수 형태의 숫자를 8진수 문자열로 바꾸어 돌려주는 함수이다.

print(oct(32))
# 0o40

open(filename, mode)

open(filename, [mode])은 "파일 이름"과 "읽기 방법"을 입력받아 파일 객체를 돌려주는 함수이다.

읽기 방법(mode)을 생략하면 기본값인 읽기 전용 모드(r)로 파일 객체를 만들어 돌려준다.

mode설명
w쓰기 모드로 파일 열기
r읽기 모드로 파일 열기
a추가 모드로 파일 열기
b바이너리 모드로 파일 열기

b는 w, r, a와 함께 사용한다.

f = open("binary_file", "rb")
# rb는 "바이너리 읽기 모드"를 의미한다.

ord(c)

ord(c)는 문자의 아스키 코드 값을 돌려주는 함수이다.

print(ord('a'))
# 97

pow(x, y)

pow(x, y)는 x의 y 제곱한 결괏값을 돌려주는 함수이다.

range([start,] stop [,step])

range([start,] stop [,step] )는 for문과 함께 자주 사용하는 함수이다.

이 함수는 입력받은 숫자에 해당하는 범위 값을 반복 가능한 객체로 만들어 돌려준다.

################
# 인수가 하나일 경우
# 시작 숫자를 지정해 주지 않으면 range 함수는 0부터 시작한다.

list(range(5))
# [0, 1, 2, 3, 4]

################
# 인수가 2개일 경우
# 입력으로 주어지는 2개의 인수는 시작 숫자와 끝 숫자를 나타낸다. 
# 단 끝 숫자는 해당 범위에 포함되지 않는다는 것에 주의하자.

list(range(5, 10))
# [5, 6, 7, 8, 9]

################
# 인수가 3개일 경우
# 세 번째 인수는 숫자 사이의 거리를 말한다.

list(range(1, 10, 2))
# [1, 3, 5, 7, 9]

list(range(0, -10, -1))
# [0, -1, -2, -3, -4, -5, -6, -7, -8, -9]

round(number[, ndigits])

round(number[, ndigits]) 함수는 숫자를 입력받아 반올림해 주는 함수이다.
두 번째 매개변수반올림하여 표시하고 싶은 소수점의 자릿수(ndigits)

print(round(5.678, 2))
# 5.68

sorted(iterable)

sorted(iterable) 함수는 입력값을 정렬한 후 그 결과를 리스트로 돌려주는 함수이다.

sorted([3, 1, 2])
# [1, 2, 3]

sorted((3, 2, 1))
# [1, 2, 3]

sorted(['a', 'c', 'b'])
# ['a', 'b', 'c']

sorted("zero")
# ['e', 'o', 'r', 'z']

리스트 자료형에도 sort 함수가 있다.

하지만 리스트 자료형의 sort 함수는 리스트 객체 그 자체를 정렬만 할 뿐 정렬된 결과를 돌려주지는 않는다.

str(object)

str(object)은 문자열 형태로 객체를 변환하여 돌려주는 함수이다.

sum(iterable)

sum(iterable)은 입력받은 리스트나 튜플의 모든 요소의 합을 돌려주는 함수이다.

tuple(iterable)

tuple(iterable)은 반복 가능한 자료형을 입력받아 튜플 형태로 바꾸어 돌려주는 함수이다.

tuple("abc")
# ('a', 'b', 'c')

tuple([1, 2, 3])
# (1, 2, 3)

tuple((1, 2, 3))
#(1, 2, 3)

type(object)

type(object)은 입력값의 자료형이 무엇인지 알려 주는 함수이다.

type("abc")
# <class 'str'>

type([ ])
# <class 'list'>

zip(*iterable)

zip(*iterable)은 동일한 개수로 이루어진 자료형을 묶어 주는 역할을 하는 함수이다.
*iterable은 반복 가능(iterable)한 자료형 여러 개를 입력할 수 있다는 의미


list(zip([1, 2, 3], [4, 5, 6]))
# [(1, 4), (2, 5), (3, 6)]

list(zip([1, 2, 3], [4, 5, 6], [7, 8, 9]))
# [(1, 4, 7), (2, 5, 8), (3, 6, 9)]

list(zip("abc", "def"))
# [('a', 'd'), ('b', 'e'), ('c', 'f')]
profile
🚀 기록보단 길록을 20.10 ~ 22.02 ⭐ Move To : https://gil-log.github.io/

0개의 댓글