append()
를 이용하고 pop은 pop()
을 이용한다.stack = [1, 2, 3, 4, 5, 6, 7]
print(stack)
stack.append(8) #push
print(stack)
stack.pop() #pop
print(stack)
[1, 2, 3, 4, 5, 6, 7]
[1, 2, 3, 4, 5, 6, 7, 8]
[1, 2, 3, 4, 5, 6, 7]
스택의 활용 예시: 역순 문자열 만들기
word = input()
word_list = list(word)
back_word = ""
for i in range(len(word_list)):
back_word = back_word + word_list.pop()
print(back_word)
append()
, 디큐(dnQueue)에는 pop(0)
stack = [1, 2, 3, 4, 5, 6, 7]
print(stack)
stack.append(8) #인큐
print(stack)
stack.pop(0) #디큐
print(stack)
[1, 2, 3, 4, 5, 6, 7]
[1, 2, 3, 4, 5, 6, 7, 8]
[2, 3, 4, 5, 6, 7, 8]
값이 하나인 tuple은 반드시 ,를 붙여야 한다.
tup = (1,)
print(type(tup))
<class 'tuple'>
a = set([1, 2, 3, 4, 5])
b = set([1, 2, 3])
a & b #교집합(a.intersection(b))
{1, 2, 3}
a | b #합집합(a.union(b))
{1, 2, 3, 4, 5}
a - b #자칩합(a.difference(b))
{4, 5}
kor_dict = {"가":1, "나":2, "다":3, "라":4}
key, value값 추가하기
kor_dict["마"] = 5
kor_dict
{'가': 1, '나': 2, '다': 3, '라': 4, '마': 5}
key들을 리스트로 반환하기
kor_dict.keys()
dict_keys(['가', '나', '다', '라', '마'])
value들을 리스트로 반환하기
kor_dict.values()
dict_values([1, 2, 3, 4, 5])
key, value 를 리스트로 뽑아내기
kor_dict.items()
dict_items([('가', 1), ('나', 2), ('다', 3), ('라', 4), ('마', 5)])
for k, v in kor_dict.items():
print(f"key: {k}, value: {v}")
key: 가, value: 1
key: 나, value: 2
key: 다, value: 3
key: 라, value: 4
key: 마, value: 5
from collections import deque
deque = deque([1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
deque
deque([1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
rotate(x) = x만큼 옆으로 도는 거라고 생각하면된다.
deque.rotate(1)
deque
deque([10, 1, 2, 3, 4, 5, 6, 7, 8, 9])
deque.rotate(2)
deque
deque([8, 9, 10, 1, 2, 3, 4, 5, 6, 7])
일반 dict사용했을때 key값이 없다면 erorr 발샐
kor_dict = {"가":1, "나":2, "다":3, "라":4}
kor_dict["마"]
---------------------------------------------------------------------------
KeyError Traceback (most recent call last)
~\AppData\Local\Temp/ipykernel_17468/2813702422.py in <module>
1 kor_dict = {"가":1, "나":2, "다":3, "라":4}
----> 2 kor_dict["마"]
KeyError: '마'
defaultdict 사용
from collections import defaultdict
kor_dict = defaultdict(lambda: 0, kor_dict) #defualt값은 함수 형태로 넣어 주어야한다.
kor_dict["마"]
0
default dict활용 - text-minig접근법
sentence = "hi hi hi Hi hi hi yi hi hj hi bi hi hi bi hi bhi hi bhihi hifhi hgi"
word_list = sentence.lower().split()
word_count = defaultdict(lambda: 0)
for word in word_list:
word_count[word] += 1
for k, v in word_count.items():
print(f"{k}: {v}")
hi: 12
yi: 1
hj: 1
bi: 2
bhi: 1
bhihi: 1
hifhi: 1
hgi: 1
from collections import Counter
sentence = "hi hi hi Hi hi hi yi hi hj hi bi hi hi bi hi bhi hi bhihi hifhi hgi"
word_list = sentence.lower().split()
Counter(word_list)
Counter({'hi': 12,
'yi': 1,
'hj': 1,
'bi': 2,
'bhi': 1,
'bhihi': 1,
'hifhi': 1,
'hgi': 1})