본문 바로가기
  • hazard_dev@__
  • hazard_dev@__

Python22

[Python 자료구조] 트리자료구조 구현_implemented Tree Structure@_탐색, 순회, 추가 및 삭제 Powerful Tree Structure on Python 파이썬의 트리 자료구조에 대해서 학습해보도록 하겠습니다. 보통 트리 자료 구조라 함은 나무의 형태를 떠올리는데 아주 정확합니다. 마치 데이터가 나무가 가지 치듯 뻗어 나간 듯한 형태라 하여 트리 자료 구조라 합니다. 자료구조 수업을 들으신 분이라면 아마 어느 정도 구현하실 수 있겠지만, 솔직히 인간의 기억력은 한계가 존재하잖아요^^; 대충만 훑으셔도 될 것 같으며, 처음 보시는 분들은 면밀하게 하나하나 따라오시다 보면 시간은 좀 걸리시겠지만 학습하실 수 있습니다. 트리 자료구조는 많은 추상적인 사고력을 요합니다. 물론 다른 자료구조도 마찬가지만, 비선형 자료구조이기 때문에 일반적인 형태를 떠올려선 안됩니다!! 그렇다면 구현을 해보도록 하겠습니다.. 2021. 1. 4.
[Python활용]파이썬 제너레이터를 이용한 파일 읽기 및 쓰기!! Powerful Iterable Language Python!!! 파이썬은 반복에도 강하고, 다른 언어에 비해 파일 IO가 매우 간단하게 구현되는 편입니다. 물론 파일 IO는 만약 비전공자분들이 시라면, 시중에 파는 책 가장 맨 마지막에 나오는 내용으로 접하셨겠지요. 어려워서라기 보다는 입문하는 입장에서 파일 IO는 다룰 필요는 없습니다. 나중에 실력이 쌓여가시면서 버그나 기타 발생사항들을 작성하는 로그를 자동화하는 경우나 데이터 분석 쪽에서 많이 사용되니까요!! 그리고 제가 설명드리고자하는 짤막한 개념은 제너레이터입니다. 언젠가 제가 블로그에서 반복자 구현과 관련해서 글을 올리겠다 말했는데, 이 반복자만 올리자 하니 , 조금 허무할 것 같아서 파일 입출력과 묶어서 실용적인 프로그래밍에 도움이 되고자 합.. 2020. 12. 14.
[Python] map과 zip 내장함수 사용하기!! Powerful Iterator object in Python 파이썬으로 컴퓨터 랭귀지에 입문하신 분들 많으실 거 같아요! 아무래도, 사용하기 간단한 언어다 보니, 그런 경우가 있는 것 같습니다. 하지만 생각보다는 그렇게 쉬운 랭귀지는 아닙니다. 역사가 거의 30년에 가까운 언어이며, 동시에 사용할 수 있는 라이브러리의 수도 많고 그만큼 기반이 튼튼한 언어이기 때문에 학습을 열심히 하셔야 합니다! 다름이 아니라, Python의 map함수와 zip함수에 대해서 알아보고자 합니다!! map 주어진 iterable(list, tuple 등, iteration이 가능한 object)의 각 항목에 주어진 함수 혹은, 키워드를 사용해서 반복 가능한 map객체를 반환하는 역할을 합니다. 위의 알고리즘을 보면 알 수 .. 2020. 12. 12.
[Python] DefaultDict 다루기!!! Powerful Structure of dict -> DefaultDict 파이썬에서는 그냥 dictonary 구조에서 내장 구조 dict도 있지만, 내장 라이브러리인 collections내부에 정의되어 있는 또 다른 딕셔너리 구조가 있는데, 그 친구의 이름이 바로 defaultdict입니다!! 파이썬의 딕셔너리는 다른 랭귀지에서의 맵(Map())과 비슷한 기능을 하죠, 그러니까 임의의 키값에 대응되는 값이 존재하는 게 맵이자, 파이썬에서는 딕셔너리입니다. 여하튼 그렇다 가정하게 되면, 각 값에 대응하는 값이 필요하지만, 프로그램에서 오류가 KeyError 등 심각한 오류가 발생했을 때 내장 딕셔너리는 커버할 수가 없게 됩니다. 그 이유로는 키값에 대응되는 값이 존재하지 않는데, 사용자 레벨에서 존재하지.. 2020. 12. 10.