[파이썬 내장함수]
파이썬 설치 시 기본으로 포함되어 있어 import 없이 바로 사용 가능
파이썬 어디서든 (함수 안, 클래스 안, 모듈 안) 호출 가능
LEGB 스코프에서 Built-in 영역에 해당 (B)
1. 입/출력 관련 함수
함수명
기능
print(x)
객체를 문자열로 표시합니다.
input([prompt])
사용자 입력을 문자열로 반환합니다.
help([x])
x에 대한 도움말을 출력합니다.
globals()
전역변수의 리스트를 반환합니다.
locals() 또는 vars()
지역변수의 리스트를 반환합니다. 객체에 정의된 변수는 __dict__ 속성을 사용해야 합니다.
del(x) 또는 del x
객체를 변수 공간에서 삭제합니다.
eval(expr)
expr 문자열을 파이썬 코드로 실행시킵니다.
exec(obj)
파이썬 명령을 실행시킵니다.
open(filename[, mode])
파일을 엽니다.
print("hello") # hello
input("입력: ") # 입력: (사용자 입력 대기)
help(print) # print 함수 설명 출력
globals() # {'__name__': '__main__', ...}
locals() # 현재 지역 변수 딕셔너리
x = 10
del x
# print(x) # ❌ NameError
eval("1 + 2") # 3
exec("print('hello')") # hello
open("test.txt", "r") # 파일 열기
2. 기본 자료형 생성/변환 함수
함수명
기능
object()
새로운 object(모든 객체의 base)를 생성합니다.
bool(obj)
객체의 논리값을 반환합니다.
int(obj)
문자열 형태의 숫자나 실수를 정수로 변환합니다.
float(obj)
문자열 형태의 숫자나 정수를 실수로 변환합니다.
complex(real, imag)
실수부(real)와 허수부(imag)로 복소수를 생성합니다.
object() # <object object at 0x...>
bool(0) # False
bool(1) # True
int("10") # 10
int(3.9) # 3 (버림)
float("3.14") # 3.14
float(10) # 10.0
complex(2, 3) # (2+3j)
3. 기본 자료형 정보 확인 함수
함수명
기능
type(obj)
객체의 형을 반환합니다.
dir(obj)
객체가 가진 함수와 변수들을 리스트 형태로 반환합니다.
repr(obj)
eval()로 객체를 복원할 수 있는 문자열을 생성합니다.
ascii(obj)
repr()과 유사하지만 non-ascii 문자를 escape합니다.
id(obj)
객체의 고유번호(int형)를 반환합니다.
hash(obj)
객체의 해시값(int형)을 반환합니다.
chr(num)
ASCII 값을 문자로 변환합니다.
ord(str)
한 문자의 ASCII 값을 반환합니다.
isinstance(obj, class)
객체가 클래스의 인스턴스인지 판단합니다.
issubclass(sub, super)
sub 클래스가 super 클래스의 자식인지 판단합니다.
type(10) # <class 'int'>
type("hi") # <class 'str'>
dir([]) # ['append', 'clear', 'copy', ...]
repr("hello") # "'hello'"
id(10) # 4349845696 (메모리 주소)
hash("hello") # 임의의 정수값
chr(65) # 'A'
ord('A') # 65
isinstance(10, int) # True
isinstance("hi", int) # False
issubclass(bool, int) # True
4. 열거형/반복 관련 함수
함수명
기능
비고
len(seq)
시퀀스형 길이를 반환합니다.
iter(obj[, sentinel])
객체의 iterator를 반환합니다.
next(iterator)
현재 요소를 반환하고 다음으로 이동합니다.
enumerate(iterable, start=0)
iterable을 (index, value) 형태로 반환합니다.
iterator 반환
sorted(iterable[, key][, reverse])
정렬된 리스트를 반환합니다.
리스트 반환 (iterator 아님)
reversed(seq)
역순 iterator를 반환합니다.
필요시 list() 등으로 변환 필요
filter(func, iterable)
조건을 만족하는 요소만 iterator로 반환합니다.
필요시 list() 등으로 변환 필요
map(func, iterable)
각 요소에 함수를 적용한 결과를 iterator로 반환합니다.
필요시 list() 등으로 변환 필요
len([1, 2, 3]) # 3
it = iter([1, 2, 3])
next(it) # 1
next(it) # 2
for i, v in enumerate(["a", "b", "c"]):
print(i, v) # 0 a / 1 b / 2 c
sorted([3, 1, 2]) # [1, 2, 3]
sorted([3, 1, 2], reverse=True) # [3, 2, 1]
list(reversed([1, 2, 3])) # [3, 2, 1]
list(filter(lambda x: x % 2 == 0, [1, 2, 3, 4])) # [2, 4]
list(map(lambda x: x * 2, [1, 2, 3])) # [2, 4, 6]
5. 산술/논리 관련 함수
함수명
기능
hex(n)
정수를 16진수 문자열로 변환합니다.
oct(n)
정수를 8진수 문자열로 변환합니다.
bin(n)
정수를 2진수 문자열로 변환합니다.
abs(n)
절댓값을 반환합니다.
pow(x, y[, z])
거듭제곱을 계산합니다.
divmod(a, b)
(몫, 나머지) 형태로 반환합니다.
all(iterable)
모든 요소가 True면 True 반환
any(iterable)
하나라도 True면 True 반환
max(iterable)
최댓값 반환
min(iterable)
최솟값 반환
round()
반올림 수행
hex(255) # '0xff'
oct(8) # '0o10'
bin(10) # '0b1010'
abs(-5) # 5
pow(2, 3) # 8
pow(2, 3, 5) # 3 (2**3 % 5)
divmod(10, 3) # (3, 1) → (몫, 나머지)
all([True, True, True]) # True
all([True, False, True])# False
any([False, False, True])# True
any([False, False, False])# False
max([1, 2, 3]) # 3
min([1, 2, 3]) # 1
round(3.567, 2) # 3.57
round(3.5) # 4