본문 바로가기
728x90
반응형

파이썬30

똑똑한 코드 작성을 위한 실전 알고리즘 리뷰 오랜만에 다시 읽게 되는 알고리즘 책이다. 이 책에 나오는 주요 알고리즘에 대한 내용은 다음과 같다. 문제해결, 알고리즘 분석 해싱, 힙, 정렬, 이진트리, 그래프 우리가 알고리즘 공부를 할때 기본적으로 배워야 하는 알고리즘 들이다. 약간 전공서적 같은 느낌이 들긴 하지만 그것보다는 내용이 좀더 친절하게 나와 있다. 히자만 읽다보면 어려운 내용들이 많이 섞여 있다. 기초에 관련된 책이긴 하지만 난이도는 있는 책이다. 그리고 주요 코드들은 파이썬으로 되어있는데 파이썬을 모른다고 하더라도 크게 문제가 될것 같지는 않다. 코드 부분에 대한 설명은 거의 라인 단위로 설명을 해주고 있기 때문에 어떤 언어든 프로그래밍을 해본 사람이면 이해할수 있을 것이다. 복습 차원에서 각 장 마지막에 있는 연습문제들은 한번씩 스.. 2022. 11. 24.
Python 가상환경 Python Virtualenv 프로젝트별 종속성 문제를 해결하기 위해서 가상환경을 제공한다. 동시에 여러개의 프로젝트 진행시 각각의 파이썬 버전이 다를경우 사용한다. virtualenv 환경 구성 pip install virtualenv D:\STUDY\study_python>virtualenv py3.8-env created virtual environment CPython3.8.5.final.0-64 in 6461ms creator CPython3Windows(dest=D:\STUDY\study_python\py3.8-env, clear=False, global=False) seeder FromAppData(download=False, pip=bundle, setuptools=bundle, whee.. 2022. 10. 27.
Ubuntu 에서 파이썬 버전 확인 및 변경 Ubuntu 에서 파이썬 설치 위치 확인 DESKTOP-MBRI3VL:~$ python --version Python 2.7.17 DESKTOP-MBRI3VL:~$ python3 --version Python 3.6.9 파이썬을 설치하다 보면 2.X 도 있고 3.X 도 있다. 위와 같이 각각의 버전을 확인해보면 설치된 버전을 확인할 수 있다. Ubuntu를 설치하면 기본적으로 2.7을 path 로 설정한다. 아래와 같이 명령어를 실행 하면 설치된 파이썬 목록들이 나완다. (정말 이것 저것 많다.) DESKTOP-MBRI3VL:~$ ls /usr/bin | grep python python-config python2 python2-config python2.7 python2.7-config python3 .. 2022. 10. 25.
파이썬 입력값 받기 ## 공백으로 input 값 받는 방법 data = list(map(int, input().split())) # 결과 1 2 3 [1, 2, 3] 파이썬으로 입력값을 받을때 위와 같이 코드를 작성하면 간편하다. (주로 코딩테스트의 입력값 받을때 사용하면 된다.) 입력값이 공백이 아닌 콤마(,) 로 구분될 경우 split(",") 으로 변경해서 코드를 작성하면 된다. 2021. 8. 25.
파이썬 문법 : 배열 초기화 배열을 초기화 시에 아래와 같이 사용하면 유용하게 사용가능 하다. # index가 필요 없는 반복문일 경우 _ 사용, 배열 초기화시 사용 array = [[0] * 3 for _ in range(10)] print(array) # 결과값 [[0, 0, 0], [0, 0, 0], [0, 0, 0], [0, 0, 0], [0, 0, 0], [0, 0, 0], [0, 0, 0], [0, 0, 0], [0, 0, 0], [0, 0, 0]] _ 는 for 문 반복시 index 가 필요없는 단순 반복을 할 경우에 사용한다. 2021. 8. 25.
[나는 리뷰어다] 이것이 취업을 위한 코딩테스트다. 이 책을 읽기전에 저자의 알고리즘 동영상 강의를 몇번 본적이 있었다. 그래서 이 책이 나왔을때 어떤 내용으로 구성이 되어있을지 궁금했다. 그런데 마침 이렇게 한빛미디어 나는 리뷰어다를 통해서 리뷰를 작성하게 되었다. - PART 01 처음에는 코딩 테스트, 또는 알고리즘 문제 풀이를 어떻게 준비를 해야 하는지 사전 지식을 알려준다. 코딩을 위한 준비라든지 최근 몇년간 코딩테스트 유형들을 설명해준다. 그리고 취업관련 프로세스나 준비 방법들도 간단히 소개해 주고 있다. - PART 02 ~ PART 03 PART02 와 PART03 에서는 본격적으로 코딩테스트를 위한 이론과 기출을 풀어볼수 있다. PART02 에서는 주요 알고리즘에 대한 설명과 연관된 문제를 풀어볼 수 있다. 알고리즘 관련된 책들이 비슷한 .. 2021. 8. 22.
[나는 리뷰어다] 이것이 데이터 분석이다 파이썬으로 배우는 데이터 분석 입문 이라는 책을 읽어보게 되었다. 파이썬을 활용해서 주어진 데이터를 분석하는 내용을 담고 있으며 책 표지에서도 보이듯이 판다스, 넘파이, Maltplotlib 을 활용한다. 기본적으로 책이 추구하는 방향은 데이터 분석이기 때문에 다른 책들과 비슷하다. 그래서 내가 말하고 싶은 것은 이책이 다른 책과 다른 큰 장점을 말하고 싶다. 흥미로운 주제를 통해서 데이터 분석도 배우고 재미도 챙겼다. 챕터 별로 큰 주제가 있다. 텍스트 마이닝, 미래예측, 데이터 분석등을 다룬다. 그리고 챕터별로 각각의 주제에 맞게 흥미로운 데이터 셋을 가지고 공부를 할 수 있다. 아래는 국가별 음주 데이터를 가지고 분석을 하고 있다. 그리고 내가 가장 관심있게 봤던 부분은 바로 아래 챕터부분이다. 요.. 2021. 4. 18.
[나는 리뷰어다] 진지한 파이썬 전에 읽었던 "나의 첫 파이썬" 에 이어서 이번에는 "진지한 파이썬" 을 읽게 되었다. 책 제목에서 느낄수 있듯이 이 책은 파이썬의 진지한(?) 부분에 대해서 설명해 주고 있다. 우선 파이썬이라는 언어의 기본 적인 내용들은 알고 있어야 한다. 기본적인 문법에 대한 내용보다는 파이썬으로 무언가를 만들때 혹은 프로젝트를 구성하는 것부터 시작해서 라이브러리 관리, 문서화, 배포, 테스트, 성능에 관련 된 내용을 담고 있다. 장점과 단점을 몇가지 알아보면 다음과 같다. 장점 - 개발을 하면서 프로젝트의 구조를 어떻게 만들어야 하는지, 그리고 자칫 소홀히 할 수 있는 문서화는 어떻게 해야 하는지 좋은 가이드를 알려준다. - 다양한 방법의 단위 테스트를 알려주고 있어서 개발시에 상황에 맞게 적용해 볼 수 있다. 단.. 2021. 2. 19.
[나는 리뷰어다] 파이썬을 활용한 금융공학 레시피 최근에 파이썬 관련 책들을 이것 저것 많이 본것 같다. 단순히 파이썬을 위한 책들이 아닌 파이썬을 통해서 다양한 기법들을 활용해보는 책들이었는데 이번에도 그런 종류의 책이다. 그런데 상당히 재미있다. 1. 개념부터 알려준다. 난 개인적으로 금융관련 용어들에 대해서 잘 알고 있지 않다. 그래서 최근에 파이썬을 이용해서 금융정보를 스크레이핑 하는 기법들이 많이 소개 되고 있다. 나도 관심을 가져볼까 했는데 생각보다는 거리가 있었다. 왜 그런지 곰곰히 생각해봤는데 금융에 대해서 아는게 없어서였다. 이 책은 위와 같이 금융 관련 용어에 대해 먼저 설명을 해준다. 그래서 좀더 읽으면서 편안함을 느꼈다. 2. 친근한 엑셀로 미리 설명을 해준다. 파이썬으로 만들어 보기 전에 이렇게 엑셀을 통해서 실습을 해본다. 엑셀.. 2020. 11. 21.
[나는 리뷰어다] Web Scraping with Python 최근에 파이썬에 대한 관심이 증가 하면서 여러 분야에서 사용이 되고 있다. 다양한 분야중에 웹 크롤러도 주목을 받고 있다. 나도 관심을 갖고는 있었지만 그저 막연하게만 생각하고 있었다. 어떤 방법들이 있는지, 무엇을 먼저 해야 하는지 모르고 있었다. 그런 의미에서 이 책은 웹 크롤러에 대해서 기초부터 고급까지 차근차근 알아 볼수 있는 책이다. 읽으면서 몇가지 필요한 것들에 대해서 생각해 보았다. 1. 파이썬에 대한 기초적인 문법들은 알고 있어야 코드를 이해할 수 있다. 2. 웹 에 대해서도 기초적인 코드는 알고 있어야 한다. (html, javascript등) 3. 정규 표현식도 알고 있으면 도움이 된다. 4. 크롤러 라는건 생각보다 간단하지 않다. 인내력이 필요하다. 데이터 분석과 거의 동일한 작업이라.. 2020. 10. 25.
Python 으로 파일 내용 변경 하기 잠깐 필요에 의해서 만든 소스 def changeStringInFile(filePath, orgValue, newValue): with open(filePath, "r+") as file_object: fileContents = file_object.read() newFileContents = fileContents.replace(orgValue, newValue) file_object.seek(0) file_object.write(newFileContents) file_object.close() 파일을 오픈 한 후에 orgValue 를 찾아서 newValue 로 변경을 한다. 변경을 한 후 열었던 파일에 다시 덮어쓴다. 다시 write 할 때에 기존 파일 뒤에 append 되는것을 막기 위해서 seek.. 2020. 10. 20.
Visual Studio Code 에서 Python Jupyter Notebook 실행 Visual Studio Code 에서 Python Jupyter Notebook 실행 먼저 Jupyter Notebook 이 설치되어있지 않다면 다음과 같이 설치한다. pip install jupyterlab (참고 : https://jupyter.org/install) Ctrl + Shift + P 눌러서 Python: Create Blank New Jupyter Notebook 선택 한다. 선택을 하게 되면 다음과 같이 Jupyter Notebook 을 사용할 수 있다. 2020. 8. 24.
728x90
반응형