클라이언트/ 서버/ 엔지니어 " 게임 개발자"를 향한 매일의 공부일지

파이썬 프로그래밍의 기초, 자료형 17 - 단원 마무리 되새김 문제 풀기 본문

프로그래밍 언어/파이썬

파이썬 프로그래밍의 기초, 자료형 17 - 단원 마무리 되새김 문제 풀기

huenuri 2024. 9. 2. 11:10

이제 연습문제를 풀어보며 그동안 얼마나 열심히 공부했는지 확인해보기로 하자. 잘 모르는 건 아직 공부가 부족하다는 증거이니 찾아보면서 다시 복습해보면 될 것 같다.


 

 

 

 

되새김 문제 풀기


 

 

 


 

 

 


 

 

 


 

 

 


 

 

 


 

 

 

 

이 문제는 조금 어려웠는데 조인을 할 때 쉼표를 처음에는 넣어서 result에 넣었더니 오류가 떴다. 그냥 변수에다 넣어주면 되는 거였다. 그래도 잘 풀었다.


 

 

 

 

a 변수를 쓰면 이 코드를 조금 줄일 수 있다.

 

 

 

 


 

 

 


 

 

 

파이썬의 딕셔너리 자료형에서 키는 다음과 같은 조건을 만족해야 한다.

  1. 해시 가능해야 한다 (hashable) : 키는 변경 불가능한(immutable) 객체여야 한다. 일반적으로 문자열(str), 숫자(int, float), 튜플(tuple)(튜플 내의 모든 요소가 불변) 등이 해시 가능하고 딕셔너리의 키로 사용할 수 있음
  2. 유일해야 한다 (unique) : 딕셔너리 내에서 키는 고유해야 하며, 중복된 키를 가질 수 없음

딕셔너리 a에 리스트 [1]을 키로 사용하여 값을 할당하려고 시도하고 있다. 그러나, 리스트(list)는 변경 가능한(mutable) 객체이다. 리스트는 가변성이 있기 때문에 내부 요소가 변경될 수 있으며, 이는 리스트의 해시 값을 바꿀 수 있다. 따라서, 파이썬에서는 리스트와 같은 변경 가능한 객체를 딕셔너리의 키로 사용할 수 없다.

 

 


 

 

 


 


 

 

 

 

 

 


 

 

 

 

b의 값도 함께 변경된다. 그 이유는 a와 b의 변수가 모두 동일한 [1, 2, 3]이라는 리스트 객체를 가리키고 있기 때문이다.

 

 

 


 

 

 

학습을 마치고

문제가 정말 많았는데 아침 수업 전에 30분 정도 풀고 나머지 문제는 쉬는 시간에 짬짬이 남은 시간을 활용해서 풀어보았다. 이렇게 자투리 시간을 활용했는데 문제를 모두 풀었다.

조금 어려운 문제도 있었지만 나름 풀만 했다. 문제를 풀며 아직 부족한 개념을 정리해볼 수 있어서 좋았다.