47.5 내장 함수

파이썬의 내장 함수는 모듈이나 패키지를 가져오지 않고 바로 사용할 수 있는 함수입니다. 다음은 자주 사용하는 내장 함수입니다.

표 47-5 파이썬 내장 함수

함수

설명

abs(숫자)

숫자의 절댓값을 반환

all(반복가능한객체)

반복 가능한 객체의 요소가 모두 참이면 True, 하나라도 거짓이면 False

예) all([1, 2, 3])True, all([1, 0, 3])False

any(반복가능한객체)

반복 가능한 객체의 요소가 하나라도 참이면 True, 모두 거짓이면 False

예) any([1, 0, 0])True, any([0, 0, 0])False

bin(정수)

정수를 2진수로 된 문자열로 만들어서 반환

bool(값)

값을 True, False로 변환하여 반환. 0이 아닌 숫자, 내용이 있는 객체는 True를 반환하고 0, None, 비어있는 객체는 False를 반환

bytes(바이트)

바이트 객체를 반환(읽기 전용), bytes는 바이트 단위(8비트)로 값을 저장하는 자료형

예) bytes(b'hello')b'Hello'

bytearray(바이트)

요소를 변경할 수 있는 바이트 배열 객체를 반환

예) bytearray(b'hello')bytearray(b'hello')

chr(코드값)

ASCII 코드값에 해당하는 문자를 반환. 예) chr(97)'a'

dict(반복가능한객체)

반복 가능한 객체로 딕셔너리를 생성하여 반환

dir(객체)

객체의 네임스페이스를 반환, 객체를 지정하지 않으면 현재 네임스페이스를 반환

divmod(a, b)

두 숫자의 몫과 나머지를 튜플로 반환

enumerate(반복가능한객체)

객체에 들어있는 요소의 순서(인덱스)와 요소를 튜플로 묶어서 enumerate 객체를 반환

예) list(enumerate(['a', 'b', 'c']))[(0, 'a'), (1, 'b'), (2, 'c')]

eval('문자열')

문자열 형태의 파이썬 코드를 실행하고 결과를 반환(문자열을 파이썬 인터프리터에서 실행).
예) eval('print(1, 2)')는 1 2 출력

filter(함수, 반복가능한객체)

반복 가능한 객체에서 특정 조건에 맞는 요소만 가져옴

예) list(filter(lambda x: x % 2 == 0, [1, 2, 3, 4]))[2, 4]

float(값)

숫자나 문자열을 실수로 변환하여 반환

format(값, 포맷스펙)

값을 지정된 포맷 스펙에 맞게 문자열로 만듦

예) format(10000, ',')'10,000'

help(객체)

객체의 이름, 매개변수, 독스트링(__doc__ 속성)을 도움말 형태로 출력

hex(정수)

정수를 16진수로 된 문자열로 만들어서 반환

예) hex(15) '0xf'

id(객체)

객체의 고유한 값을 반환(CPython에서는 메모리 주소)

input('문자열')

사용자의 입력을 받아서 문자열을 반환

int(값)

숫자나 문자열을 정수로 변환하여 반환, int('문자열', 진법)은 해당 진법으로 된 문자열을 10진수로 변환하여 반환

isinstance(객체, 클래스)

객체가 클래스의 인스턴스인지 확인, 클래스의 인스턴스가 맞으면 True, 아니면 False

issubclass(파생클래스, 기반클래스)

클래스가 특정 클래스의 파생 클래스인지 확인, 파생 클래스가 맞으면 True, 아니면 False

iter(반복가능한객체)

객체에서 이터레이터를 반환. 객체의 __iter__ 메서드를 호출해줌

len(객체)

객체의 길이(요소 개수)를 반환

list(반복가능한객체)

반복 가능한 객체로 리스트를 생성하여 반환

map(함수, 반복가능한객체)

반복 가능한 객체의 요소를 지정된 함수로 처리한 뒤 map 객체를 반환

예) list(map(lambda x: x + 10, [1, 2]))[11, 12]

min(반복가능한객체)

max(반복가능한객체)

min은 반복 가능한 객체의 요소 중에서 가장 작은 요소를 반환, max는 반복 가능한 객체의 요소 중에서 가장 큰 요소를 반환

next(이터레이터)

이터레이터에서 요소를 차례대로 가져와서 반환, 이터레이터의 __iter__ 메서드를 호출해줌

oct(정수)

정수를 8진수로 된 문자열로 만들어서 반환

예) oct(8)'0o10'

open(파일이름, 파일모드)

지정된 파일을 열어서 파일 객체를 반환, encoding을 지정하면 파일을 해당 인코딩으로 처리(텍스트 모드에만 적용됨)

예) open('hello.txt', 'w', encoding='utf-8')은 파일의 인코딩을 UTF-8로 저장

ord(문자)

문자의 ASCII 코드를 반환. 예) ord('a')는 97

pow(값, 지수)

값을 지수만큼 거듭제곱한 값을 반환

range(횟수)

지정된 횟수만큼 숫자를 생성하는 반복 가능한 객체를 반환, range(시작, 끝, 증가폭)처럼 숫자의 범위와 증가폭을 지정할 수 있음

repr(객체)

파이썬 인터프리터에서 실행할 수 있는 문자열을 반환. repr에서 반환된 문자열은 eval로 실행할 수 있음
예) repr(datetime.datetime.now())'datetime.datetime(2018, 5, 24, 9, 0, 2, 507913)'

reversed(반복가능한객체)

반복 가능한 객체에서 요소의 순서를 뒤집어서 반환

set(반복가능한객체)

반복 가능한 객체로 세트를 생성하여 반환

sorted(반복가능한객체)

반복 가능한 객체의 요소를 오름차순 정렬하여 반환, reverse=True를 지정하면 내림차순 정렬

예) sorted([8, 5, 2])[2, 5, 8]

str(값)

값을 문자열로 변환하여 반환

super()

현재 클래스의 기반 클래스 인스턴스(객체)를 반환

sum(반복가능한객체)

반복 가능한 객체에 들어있는 모든 요소의 합을 반환

tuple(반복가능한객체)

반복 가능한 객체로 튜플을 생성하여 반환

type(객체)

객체의 클래스(자료형) 객체를 반환. type('클래스이름', 기반클래스튜플, 속성메서드딕셔너리)는 클래스 객체를 생성하여 반환

zip(반복가능한객체, ...)

반복 가능한 객체 여러 개를 넣으면 요소 순서대로 튜플로 묶어서 zip 객체를 반환

예) list(zip([1, 2, 3], [97, 98, 99]))[(1, 97), (2, 98), (3, 99)]