Develop/python

Ptyhon study 정리

nuKeguyS 2018. 8. 1. 10:42

한 달 동안(7.1~7.31)의 Ptyhon study 마무리


쉬면서 python을 공부해봐야 겠다 싶어서 시작을 했고, 이제 마무리를 지어본다.

아직 할 건 많고 부족한 것도 많지만, 첫 목표는 이쯤에서 완료하고 다음 단계로 넘어가는게 좋을 것 같다.

그동안 진행 내용을 markdown으로 정리하고 github-page에 올렸으나, 관리가 어려워 tistory만 사용하면서 옮겨본다.

마지막 며칠은 git을 날리는 바람에 내용이 부족하다. 내용도 원래 별로 없긴하지만.


목표

최신 python버전 3.7을 사용해서 jump to python내용으로 학습 후 HackerRank와 병행

HackerRank 순서
30 Days of Code(1일 1문제)

Interview Preparation Kit(65문제) > Cracking the Coding Interview(20문제) > Problem Solving

다음날 복습할 겸 정리해서 posting.


Project

"파이썬으로 배우는 알고리즘 트레이딩" 예제로 진행

해보고 싶던 python을 공부하는 계획 이었다. 여기에 추가로 그동안 못했던 알고리즘 공부를 같이 해보는게 목표였다. 그래서 언어를 익히고 문제풀이도 함께 병행하는 것을 계획했다. wikidocs를 다 본 후에는 진행 중에 프로젝트성으로 뭔가 해보고 싶어서 "파이썬으로 배우는 알고리즘 트레이딩"을 추가로 봤다. 아직 다 진행은 하지 못했지만 너무 이후에 선택적으로 진행 해 볼 예정이다.
HackerRank는 마침 한 달 tutorial이 있어서 진행하기가 좋았다. 관련해서 마지막 날의 정리는 별도로 해두었다.

HackerRank의 문제풀이는 워낙 많은 관계로 앞으로 틈틈히 풀고 정리할 예정이다. 오랜만에 알고리즘 문제를 풀면서 집중도 하게 되고 재미를 느낀 것 같다. 이후 시간이되면 좀 더 체계적으로 공부를 해 볼 생각이다.


일정

 

 날짜

내용 

1

2018.07.01

준비: Python 설치, 교재 구매(복습/보관용)

Jump to python

00장 들어가기전에

01장 파이썬이란 무엇인가?

2018.07.02

Jump to python

02장 파이썬 프로그래밍의 기초, 자료형

03장 프로그램의 구조를 쌓는다! 제어문

04장 프로그램의 입력과 출력은 어떻게 해야 할까?

HackerRank

30 Days of Code : Day 0: Hello, World

Interview Preparation : Arrays (2018/07/17 - HackerRank Interview Preparation Kit > Arrays)

3

2018.07.03

Jump to python

05장 파이썬 날개달기

Review - 책

01장 파이썬이란 무엇인가?

02장 파이썬 프로그래밍의 기초, 자료형

HackerRank

30 Days of Code : Day 1:Data Types

4

2018.07.04

HackerRank

30 Days of Code : Day 2:Operators

Tech Interview - OS

2018/07/17 - Tech Interview - OS

5

2018.07.05

HackerRank

30 Days of Code : Day 3:Intro to Conditional Statements

Interview Preparation : Sort (2018/07/17 - HackerRank Interview Preparation Kit > Sorting)

J-2

6

2018.07.06

Jump to python

05장 파이썬 날개달기

HackerRank

30 Days of Code : Day 4:Class vs. Instance

7

2018.07.07

Jump to python

06장 파이썬 프로그래밍, 어떻게 시작해야 할까?

B.부록

HackerRank

30 Days of Code : Day 5:Loops

Codility

Lesson1.Iterations 

Lesson2.Arrays

Lesson3.Time Complexity

Lesson4.CountingElements

Lesson5.Prefix Sums

Lesson6.Sorting

8

2018.07.08

HackerRank

30 Days of Code : Day 6:Let's Review

Codility

Lesson7.Stacks and Queues

9

2018.07.09

Review - 책

02장 파이썬 프로그래밍의 기초, 자료형

HackerRank

30 Days of Code : Day 7:Arrays

Codility

Lesson8.Leader

A-Codility(3, 155min)

10

2018.07.10

HackerRank

30 Days of Code : Day 8:Dictionaries and Maps

Interview Preparation : Dictionaries and Hashmaps (2018/07/17 - HackerRank Interview Preparation Kit > Dictionaries and Hashmaps)

Codility

Lesson9.Maximum slice problem

11

2018.07.11

HackerRank

30 Days of Code : Day9:Recursion

Python : Introduction, Basic Data Types

Interview Preparation : String Manipulation (2018/07/17 - HackerRank Interview Preparation Kit > String Manipulation)

12

2018.07.12

HackerRank

30 Days of Code : Day10:Binary Numbers

A-1

13

2018.07.13

HackerRank

30 Days of Code : Day11:2D Arrays

Interview Preparation : String Manipulation (2018/07/17 - HackerRank Interview Preparation Kit > String Manipulation)

Python : Strings

14

2018.07.14

HackerRank

30 Days of Code : Day12:Inheritance

Python : Strings

15

2018.07.15

HackerRank

30 Days of Code : Day13:Abstract Classes

Python : Strings

16

2018.07.16

HackerRank

30 Days of Code : Day14:Scope

Interview Preparation : Greedy Florist (2018/07/17 - HackerRank Interview Preparation Kit > Greedy)

Jump to python

07장 유용한 파이썬 도구들

17

2018.07.17

HackerRank

30 Days of Code : Day15:Linked List

파이썬으로 배우는 알고리즘 트레이딩

00. 들어가기 전에 ~ 07. 파일 다루기

18

2018.07.18

HackerRank

30 Days of Code : Day16:Exceptionis - String to Integer

파이썬으로 배우는 알고리즘 트레이딩

08. 실전 프로젝트

09. 파이썬과 COM

12. 키움증권 API

19

2018.07.19

HackerRank

30 Days of Code : Day17:More Exceptions

Interview

8퍼센트 면접 문제 - pingpong (2018/07/19 - 8퍼센트 면접문제 - pingpong)

20

2018.07.20

HackerRank

30 Days of Code : Day18:Queues and Stacks

21

2018.07.21

HackerRank

30 Days of Code : Day19:Interface

22

2018.07.22

HackerRank

30 Days of Code : Day20:Sorting

23

2018.07.23

HackerRank

30 Days of Code : Day21:Generics - not python

Codility

문제풀이 정리

8-1

24

2018.07.24

HackerRank

30 Days of Code : Day22:Binary Search Trees

Interview Preparation : Search (2018/07/24 - HackerRank Interview Preparation Kit > Search)

Codility

문제풀이 정리

25

2018.07.25

HackerRank

30 Days of Code : Day23:BST Level-Order Traversal

Interview Preparation : Search (2018/07/24 - HackerRank Interview Preparation Kit > Search)

파이썬으로 배우는 알고리즘 트레이딩

13. Pandas를 이용한 데이터 분석 기초

26

2018.07.26

HackerRank

30 Days of Code : Day24:More Linked List

Interview Preparation : Search (2018/07/24 - HackerRank Interview Preparation Kit > Search)

파이썬으로 배우는 알고리즘 트레이딩

14. Pandas와 zipline을 이용한 백테

27

2018.07.27

HackerRank

30 Days of Code : Day 25: Running Time and Complexity

28

2018.07.28

HackerRank

30 Days of Code : Day 26: Nested Logic

29

2018.07.29

HackerRank

30 Days of Code : Day 27: Testing

30

2018.07.30

HackerRank

30 Days of Code : Day 28: RegEx, Patterns, and Intro to Databases

31

2018.07.31

HackerRank

30 Days of Code : Day 29: Bitwise AND (2018/07/31 - 30 Days of Code > Day29:Bitwise AND)


새로운 시작.

마침 오늘부터 코딩야학이 시작되었다. 타이밍도 적절하고 공부하려던 것(Django)과도 관련이 있을 것 같아 기초를 쌓을 겸 시작한다.

마침 페이스북에 코딩야학 안내 글이 올라오면서 이런 말이 있었다. 

충분히 많은 시작 위에서 드물게 자라나는 것이 지속성인 것 같습니다. '완주하지 않겠다. 시작만 해보겠다.'는 마음으로 가볍게 시작해보시면 어떨까요?

항상 시작만 하고 끝을 잘 내지 못했던 나로서는 부담감이 적어진다. 맘에 든다.