[파이썬 python] 딕셔너리 ditionary

2020. 12. 16. 02:42python

728x90
반응형

딕셔너리


dict={key:value}

kospi ={'005930':'삼성전자'}

 

kospi.values()

kospi.keys()

 

'삼성전자' in kospi.values()

 

for key in kospi.keys

 

 

아래 두개는 같은 것이다.


3줄

for key in kospi.keys():
	value = kospi[key]
	print(key, value)

 

2줄

for key, value in kospi.items():
	print(key, value)

 

 

리스트와 차이점 Aliasing


  • 먼저 x=1 에서 1은 x로 지정되고 
  • y=x 에서 y가 x로 지정된다.  1이 y로 지정된거와 같다.
  • 마지막으로  y=2 에서 2에 y가 지정된다.
x=1
y=x
y=2
print(x)
print(y)

결과 x = 1, y=2


리스트에서는 조금 다르다.

  • 먼저 x=[1,2,3,4,5] 리스트가 x 가된다.
  • y에 x 가 된다. x 는 [1,2,3,4,5] 이므로 y 도 [1,2,3,4,5] 이된다.
  • 마지막으로  y[0] 을 10으로 바꾸면 [10,2,3,4,5]가 되고 . 
x=[1,2,3,4,5]
y=x
y[0]=10
print(x)
print(y)

결과 [1,2,3,4,5] 는 x 또는 y 로 지정되어 리스트를 공유하고있다. y 리스트 값만 바꾸어도, x 리스트 값도 바뀌게 된다.

결과는 x = [1,2,3,4,5], y = [10,2,3,4,5] 가 아닌 x = [10,2,3,4,5], y = [10,2,3,4,5] 

 

예시


뉴스에서 주식 언급한 빈도수를 카운트 하기

# 뉴스에서 주식 언급수
kospi_news = ['삼성전자', '삼성전자', '삼성전자', '삼성전자', '삼성전자', '삼성전자', '삼성전자', '삼성전자', \
'삼성전자', '삼성전자', 'sk하이닉스', 'sk하이닉스', 'sk하이닉스', 'sk하이닉스', 'sk하이닉스', 'sk하이닉스', \
'셀트리온', '셀트리온', '셀트리온', '셀트리온', '셀트리온', '셀트리온', '셀트리온', '셀트리온']

# 빈도수 count 사전
kospi_news_counter = {}

# kospi_news 리스트를 이용해서 kospi_news_counter dictionary에 count
for name in kospi_news
    if name not in kospi_news_counter:
        kospi_news_counter[name] = 1
    else:
        kospi_news_counter[name] += 1

# 후보별 득표수 출력
print(kospi_news_counter)

 

반응형

'python' 카테고리의 다른 글

OrderedDict vs defaultdict vs dict  (0) 2021.01.03
[파이썬 Python] 로깅 logging  (0) 2020.12.24
[파이참 PyCharm] 단축키  (0) 2020.12.15
[파이썬 python] print(), sep='', end=''  (0) 2020.12.09
plt.plot 한글 폰트 깨짐 현상  (0) 2020.08.03