본문 바로가기

Python

[Python3] 내장 함수 관련 정리

반응형

[Python3] 내장 함수 관련 정리

abs

abs(x)는 x라는 숫자의 절대값을 리턴하는 함수

print(abs(3))
print(abs(-3))
print(abs(-1,2))

######## RESULT ########
3
3
1.2

 

all

all(x)는 반복 가능한(iterable) 자료형 x를 입력 인수로 받으며 이 x가 모두 참이면 True, 거짓이 하나라도 있으면 False를 돌려준다.

iterable 자료형 : List, Tuple, Dictionary, Set, 문자열 등

a = [1, 2, 3]
b = [1, 2, 3, 0]

print(all(a))
print(all(b))

######## RESULT ########
True
False

 

any

all(x)의 반대 개념. any(x)는 x 중 하나라도 참이 있으면 True를 돌려주고, x가 모두 거짓일 때에만 False를 돌려준다.

a = [1, 2, 3, 0]
b = [0, ""]

print(any(a))
print(any(b))

######## RESULT ########
True
False

 

chr / ord

아스키 코드 값을 입력받고 그에 맞는 문자를 출력해주는 함수 / 문자의 아스키 코드 값을 돌려주는 함수

print(chr(97))
print(chr(48))

######## RESULT ########
'a'
'0'

print(ord('a'))
print(ord('0'))

######## RESULT ########
97
48

 

dir

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

print(dir([1, 2, 3]))
print({'1':'a'})

######## RESULT ########
['append', 'count', 'extend', 'index', 'insert', 'pop', ...]
['clear', 'copy', 'get', 'has_key', 'items', 'keys', ...]

 

enumerate

열거하다 라는 뜻을 가지고 있는 enumerate는 순서가 있는 자료형(리스트, 튜플, 문자열)을 입력받아 인덱스 값을 포함하는 enumerate 객체를 돌려준다. 즉, 다음 예제와 같이 반복문 내에서 객체의 현재 인덱스 값이 필요할 때 enumerate를 사용하면 유용하다.

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

######## RESULT ########
0 body
1 foo
2 bar

 

filter

첫 번째 인수로 함수 이름을, 두 번째 인수로 그 함수에 차례로 들어갈 반복 가능한 자료형을 받는다. 그리고 두 번째 인수인 반복 가능한 자료형 요소가 첫 번째 인수인 함수에 입력되었을 때 반환 값이 참인 것만 걸러내서 리턴한다. 즉, 아래에서 만든 positive 함수는 리스트를 입력값으로 받아 각각의 요소를 판별해서 양수 값만 돌려주는 함수다.

def positive(x):
    return x > 0

l = [1, -3, 2, 0, -5, 6]
print(list(filter(positive, l)))

######## RESULT ########
[1, 2, 6]

##### 람다를 활용하면
print(list(filter(lambda x: x > 0, l)))

######## RESULT ########
[1, 2, 6]

 

map

map(f, iterable)은 함수(f)와 반복 가능한(iterable) 자료형을 입력으로 받는다. map은 입력받은 자료형의 각 요소를 함수 f가 수행한 결과를 묶어서 돌려주는 함수다.

def two_times(x):
    return x*2

l = [1, 2, 3, 4]
result = list(map(two_times, l))
print(result)

######## RESULT ########
[2, 4, 6, 8]

 

sorted

인자로 iterable 한 자료형이 들어간다. 그 후에 입력값을 정렬한 후 그 결과를 리스트로 돌려준다. 튜플과 문자열도 리스트로 돌려준다.

print(sorted([3, 1, 2]))
print(sorted['a', 'c', 'b'])
print(sorted("zero"))
print(sorted((3,2,1)))

######## RESULT ########
[1, 2, 3]
['a', 'b', 'c']
['e', 'o', 'r', 'z']
[1, 2, 3]

 

zip

인자로 iterable 한 자료형이 여러개 들어갈 수 있다. 동일한 개수로 이루어진 자료형을 묶어주는 역할을 한다.

a = [1, 2, 3]
b = [4, 5, 6]
print(list(zip(a, b)))

c = [7, 8, 9]
print(list(zip(a, b, c)))

s1 = "abc"
s2 = "def"
print(list(zip(s1, s2)))

######## RESULT ########
[(1,4), (2,5), (3, 6)]
[(1, 4, 7), (2, 5, 8), (3, 6, 9)]
[('a', 'd'), ('b', 'e'), ('c', 'f')]

 


반응형

'Python' 카테고리의 다른 글

[Python3] Collection 모듈 내 Counter 관련  (0) 2020.03.17
[Python3] 함수 관련 정리  (0) 2020.03.15
[Python3] 제어문 관련 정리  (0) 2020.03.13
[Python3] 집합 관련 정리  (0) 2020.03.12
[Python3] 제어문 관련 정리  (0) 2020.03.12