Python 내장 함수에 대해 알아봅니다.
abs(x): 어떤 숫자를 입력받았을 때 그 숫자의 절댓값을 반환하는 함수.abs(3) # 3
abs(-3) # 3
abs(-1.2) # 1.2
all(x): 반복 가능한 데이터 x를 입력값으로 받으며 이 x의 요소가 모두 참이면 True, 거짓이 하나라도 있으면 False를 반환.all([1, 2, 3]) # True
all([1, 2, 3, 0]) # False
all([]) # Trueany(x): 반복 가능한 데이터 x를 입력으로 받아 x의 요소 중 하나라도 참이 있으면 True를 반환하고 x가 모두 거짓일 때만 False를 반환한다. any([1, 2, 3, 0]) # True
any([0, ""]) # False
any([]) # Falsechr(i): 유니코드 숫자 값을 입력받아 그 코드에 해당하는 문자를 반환하는 함수.chr(97) # 'a'
chr(44032) # '가'ord(c): 문자의 유니코드 숫자 값을 반환하는 함수.ord('a') # 97
ord('가') #44032dir(): 객체가 지닌 변수나 함수를 보여 주는 함수.dir([1, 2, 3]) # ['append', 'count', 'extend', 'index', 'insert', 'pop',...]
dir({'1':'a'}) # ['clear', 'copy', 'get', 'has_key', 'items', 'keys',...]
divmod(a, b): 2개의 숫자 a, b를 입력으로 받는다. 그리고 a를 b로 나눈 몫과 나머지를 튜플로 반환한다.divmod(7, 3) # (2, 1)
enumerate(): 순서가 있는 데이터(리스트, 튜플, 문자열)를 입력으로 받아 인덱스 값을 포함하는 enumerate 객체를 반환한다.for i, name in enumerate(['body', 'foo', 'bar']):
print(i, name)
# 0 body
# 1 foo
# 2 bar
eval(): 문자열로 구성된 표현식을 입력으로 받아 해당 문자열을 실행한 결괏값을 반환하는 함수.eval('1+2') # 3
eval("'hi' + 'a'") # 'hia'
eval('divmod(4, 3)') # (1, 1)
filter(함수, 반복_가능한_데이터)def positive(x):
return x > 0
print(list(filter(positive, [1, -3, 2, 0, -5, 6]))) # [1, 2, 6]
# list 함수는 filter 함수의 반환값을 리스트로 출력하기 위해 사용
hex(x): 정수를 입력받아 16진수(hexadecimal) 문자열로 변환하여 반환하는 함수.hex(234) # '0xea'
hex(3) # '0x3'
id(object): 객체를 입력받아 객체의 고유 주솟값(레퍼런스)을 반환하는 함수.a = 3
id(3) # 135072304
id(a) # 135072304
b = a
id(b) # 135072304
id(4) # 135072292
input([prompt]): 사용자 입력을 받는 함수. 입력 인수로 문자열을 전달하면 그 문자열은 프롬프트가 된다.a = input()
hi
a # 'hi'
b = input("Enter: ")
Enter: hi
b # 'hi'
int(x): 문자열 형태의 숫자나 소수점이 있는 숫자를 정수로 반환하는 함수. 만약 정수가 입력되면 그대로 반환.int('3') # 3
int(3.4) # 3int(x, radix): radix 진수로 표현된 문자열 x를 10진수로 변환하여 반환.int('11', 2) # 3 (2진수로 표현된 '11'의 10진수 값)
int('1A', 16) # 26 (16진수로 표현된 '1A'의 10진수 값)str(object): 문자열 형태로 객체를 변환하여 반환하는 함수.str(3) # '3'
str('hi') # 'hi'
isinstance(object, class)class Person: pass
a = Person()
isinstance(a, Person) # True
b = 3
isinstance(b, Person) # False
len(s): 입력값 s의 길이(요소의 전체 개수)를 반환하는 함수.len("python") # 6
len([1,2,3]) # 3
len((1, 'a')) # 2
list(iterable) 반복 가능한 데이터를 입력받아 리스트로 만들어 반환하는 함수.list("python") # ['p', 'y', 't', 'h', 'o', 'n']
list((1,2,3)) # [1, 2, 3]
list([1, 2, 3]) # [1, 2, 3]tuple(iterable): 반복 가능한 데이터를 튜플로 바꾸어 반환하는 함수. tuple("abc") # ('a', 'b', 'c')
tuple([1, 2, 3]) # (1, 2, 3)
tuple((1, 2, 3)) # (1, 2, 3)map(f, iterable) def two_times(x):
return x*2
list(map(two_times, [1, 2, 3, 4])) # [2, 4, 6, 8]
max(iterable): 인수로 반복 가능한 데이터를 입력받아 그 최댓값을 반환하는 함수.max([1, 2, 3]) # 3
max("python") # 'y'min(iterable): 인수로 반복 가능한 데이터를 입력받아 그 최솟값을 반환하는 함수.min([1, 2, 3]) # 1
min("python") # 'h' oct(x): 정수를 8진수 문자열로 바꾸어 반환하는 함수.oct(34) # '0o42'
oct(12345) # '0o30071'
open(filename, [mode])f = open("binary_file", "rb")
pow(x, y): x를 y제곱한 결괏값을 반환하는 함수.pow(2, 4) # 16
pow(3, 3) # 27
range([start,] stop [,step]): 입력받은 숫자에 해당하는 범위 값을 반복 가능한 객체로 만들어 반환.list(range(5)) # [0, 1, 2, 3, 4]
list(range(5, 10)) # [5, 6, 7, 8, 9]
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(4.6) # 5
round(4.2) # 4
round(5.678, 2) # 5.68 (소수점 2자리까지만 반올림)
sorted(iterable): 입력 데이터를 정렬한 후 그 결과를 리스트로 반환하는 함수.sorted([3, 1, 2]) # [1, 2, 3]
sorted(['a', 'c', 'b']) # ['a', 'b', 'c']
sorted("zero") # ['e', 'o', 'r', 'z']
sorted((3, 2, 1)) # [1, 2, 3]
sum(iterable): 입력 데이터의 합을 반환하는 함수.sum([1,2,3]) # 6
sum((4,5,6)) # 15
type(object): 입력값의 자료형이 무엇인지 알려 주는 함수.type("abc") # <class 'str'>
type([ ]) # <class 'list'>
type(open("test", 'w')) # <class '_io.TextIOWrapper'>
zip(*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')]