TIL

1주차 WIL

수현조 2024. 11. 29. 23:45

이번 주의 파이썬 학습 내용 (WIL)

이번 주에는 딕셔너리(Dictionary)의 활용과 이를 기반으로 한 문제 풀이를 중점적으로 학습했습니다. 아래에 주요 학습 내용과 느낀 점을 정리합니다.


📌 1. 주요 학습 내용

  1. 딕셔너리의 기본 개념과 활용
    • 딕셔너리는 키-값 쌍으로 데이터를 저장하는 매우 유용한 자료구조입니다.
    • 딕셔너리 생성, 접근, 수정, 삭제 방법을 학습했습니다.
    # 딕셔너리 기본 사용 예제
    student_scores = {"Alice": 85, "Bob": 92, "Charlie": 78}
    print(student_scores["Alice"])  # 85
    
    student_scores["David"] = 88  # 새로운 키-값 추가
    del student_scores["Charlie"]  # 특정 키 삭제
    
  2. 딕셔너리 메서드 활용
    • keys(), values(), items()와 같은 메서드를 활용하여 데이터를 효율적으로 탐색했습니다.
    • get() 메서드를 사용하여 KeyError를 방지하는 방법도 학습했습니다.
    # 딕셔너리 메서드 활용 예제
    student_scores = {"Alice": 85, "Bob": 92}
    for name, score in student_scores.items():
        print(f"{name}의 점수는 {score}입니다.")
    
  3. 문제 풀이와 딕셔너리 응용
    • 딕셔너리를 활용한 문제 해결 방법을 연습했습니다.
    • 예를 들어, 문자열 내 단어 빈도 수 세기, 데이터 그룹화 등의 문제를 해결했습니다.
    # 문자열 내 단어 빈도수 세기
    sentence = "hello world hello python"
    word_count = {}
    
    for word in sentence.split():
        word_count[word] = word_count.get(word, 0) + 1
    
    print(word_count)  # {'hello': 2, 'world': 1, 'python': 1}
    

📌 2. 실습 중 겪었던 문제와 해결 방법

  • KeyError 발생 문제
    딕셔너리에서 존재하지 않는 키에 접근하려다 KeyError가 발생했습니다. 이를 get() 메서드를 활용하여 기본값을 반환하도록 수정했습니다.
  • 중첩 딕셔너리에서 데이터 접근 문제
    중첩된 딕셔너리의 특정 값을 업데이트할 때 잘못된 키를 사용해 문제가 생겼습니다. 반복문과 items() 메서드를 활용하여 정확히 데이터를 탐색하는 방법으로 해결했습니다.

📌 3. 배운 점과 느낀 점

  • 딕셔너리는 데이터를 체계적으로 저장하고 처리하는 데 매우 유용하며, 문제 해결 과정에서 강력한 도구라는 것을 깨달았습니다.
  • 특히 get() 메서드와 defaultdict와 같은 고급 기법은 효율적인 코드 작성에 큰 도움을 주었습니다.
  • 문제 풀이를 통해 딕셔너리를 사용하는 다양한 방법과 사고력을 키울 수 있었습니다.