Code/Python Numpy

[Python] 여러가지 함수 모음 (코딩테스트)

이성훈 Ethan 2024. 4. 4. 02:30

목차

  1. [내장함수] eval
  2. [내장함수] map
  3. [내장함수] join
  4. [내장함수] split
  5. [내장함수] upper, lower
  6. [내장함수] iter, next
  7. [내장함수] replace
  8. [내장함수] dict (get, keys, values, items)
  9. [내장함수] list (insert, extend, pop, remove)
  10. [itertools] permutations, combinations
  11. [collections] Counter
  12. [collections] deque (rotate, popleft)

 

[내장함수] eval

 

문자열이 들어오면 그것을 실행시키는 함수

 

a = eval('1+2')
print(a)

>>> 3

b = eval(len([1,2,3]))
print(b)

>>> 3

 


[내장함수] map

 

list 의 element 를 특정 함수로 처리해주는 함수

 

a = [4.3, 2.7, 7.5]
b = list(map(round, a))
print(b)

>>> [4, 3, 8]

 


[내장함수] join

 

list 에 있는 element 를 하나의 문자열로 합쳐주는 함수

 

a = ''.join(['1', 'a', 'b', '2'])
print(a)

>>> '1ab2'

b = '+'.join(['1', 'a', 'b', '2'])
print(b)

>>> '1+a+b+2'

 


[내장함수] split

 

문자열을 list 로 바꿔주는 함수

 

st = " i    love  you"

lst = st.split()

print(lst)

>>> ["i", "love", "you"]

st2 = "1,2,3,4"

lst2 = st2.split(',')

print(lst2)

>>> ['1', '2', '3', '4']

 


[내장함수] upper, lower

 

주어진 string 을 대문자 또는 소문자로 변환

a = 'Ethan'
a.upper()
print(a)

>>> 'ETHAN'

a = 'Ethan'
a.lower()
print(a)

>>> 'ethan'

 


[내장함수] iter, next

 

iter 함수는 반복 가능한 타입의 객체를 순환하는 iterator 데이터 타입을 return (string, list, tuple, dict, set)

 

next 함수를 통해 순서대로 element 를 가져올 수 있음

 

lst = ['a', 4, 'weather']
it = iter(lst)

print(next(it))
>>> 'a'

print(next(it))
>>> 4

print(next(it))
>>> 'weather'

print(next(it))
>>> ERROR

 


[내장함수] replace

 

문자열에서 특정 문자열을 다른 문자열로 치환

 

a = 'masterpiece'

print(a.replace('m','rm'))

>>> 'rnasterpiece'

 


[dict 내장함수] get, keys, values, items

 

get(): key 를 주었을 때, 해당하는 value 를 return 하거나, 주어진 key 가 없을 땐 'None' 을 return

a = {'Ethan':2, 'Adapter':3, 'Rowan':1}

print(a['Ethan'])

>>> 2

print(a['Kevin'])

>>> None

# Default 값으로 None 말고 0을 사용하고 싶은 경우 (key 가 존재하지 않는 경우)

print(a['Kevin', 0])

>>> 0

 

 

keys(): key 값들을 return

 

values(): value 값들을 return

a = {'Ethan':2, 'Adapter':3, 'Rowan':1}

print(a.keys())

>>> dict_keys(['Ethan', 'Adapter', 'Rowan'])

print(list(a.keys()))

>>> ['Ethan', 'Adapter', 'Rowan']

print(a.values())

>>> dict_values([2, 3, 1])

print(list(a.values()))

>>> [2, 3, 1]

 

 

items(): 각 key 와 value 를 튜플 형태로 return

a = {'Ethan':2, 'Adapter':3, 'Rowan':1}

print(a.items())

>>> dict_items([('Ethan', 2), ('Adapter', 3), ('Rowan', 1)])

print(list(a.items()))

>>> [('Ethan', 2), ('Adapter', 3), ('Rowan', 1)]

 


[list 내장함수] insert, extend, pop, remove

 

insert(): 특정 index 에 특정 값 삽입

a = [1, 2, 3]

a.insert(2 ,4)

print(a)

>>> [1, 2, 4, 3]

 

 

extend(): list 합치기

a = [1, 2, 3]
b = [4, 5]

print(a+b)

>>> [1, 2, 3, 4, 5]

a.extend(b)

print(a)

>>> [1, 2, 3, 4, 5]

 

 

pop(): 제일 마지막 원소 또는 지정한 index return 및 삭제

a = [1, 2, 3]

a.pop()

print(a)
>>> [1, 2]

b = [1, 2, 3]

b.pop(0)

print(b)
>>> [2, 3]

 

 

remove(): 지정한 element 를 삭제 (여러 개인 경우 앞에서부터 삭제)

a = [1, 2, 3]

a.remove(2)

print(a)
>>> [1, 3]

 


[itertools] permutations, combinations

 

permutations(): 순열을 tuple 로 return

 

combinations(): 조합을 tuple 로 return

 

from itertools import permutations, combinations

a = ['A', 'B', 'C']

print(list(permutations(a, 2)))

>>> [('A', 'B'), ('A', 'C'), ('B', 'A'), ('B', 'C'), ('C', 'A'), ('C', 'B')]

print(list(combinations(a, 2)))

>>> [('A', 'B'), ('A', 'C'), ('B', 'C')]

 


[collections] Counter

 

Counter(): 각 element 가 몇 번씩 등장했는지 반환

 

from collections import Counter

a = ['A', 'B', 'C', 'B', 'C', 'D', 'C', 'A']

print(dict(Counter(a)))

>>> {'C': 3, 'A': 2, 'B': 2, 'D': 1}

 


[collections] deque (rotate, popleft)

deque(): list 와 달리 앞 뒤로 element 추가 및 제거

 

rotate(): 전체 element 를 순환시킴 (오른쪽 방향으로 n칸씩)

 

popleft(): 제일 앞 요소 삭제

► list 에서 pop(0) 보다 빠름

 

from collections import deque

a = deque([1,2,3,4])
print(a)

>>> deque([1, 2, 3, 4])

a.rotate(1)
print(a)

>>> deque([4, 1, 2, 3])

b = deque([1,2,3,4])
b.rotate(2)
print(b)

>>> deque([3, 4, 1, 2])

c = deque([1,2,3,4])
c.popleft()
print(c)

>>> deque([2, 3, 4])

'Code > Python Numpy' 카테고리의 다른 글

[Python] 내장함수 list()  (0) 2023.06.19
[Python] 내장함수 zip()  (0) 2023.06.19