도메인/금융공학

파이썬 시작, Xing API 이용하기 (3)

늘근이 2015. 4. 17. 23:17

이제 파이썬을 시작한지 1시간 남짓이 되었다.

대충 어떤 개념인지, 어떠한 철학을 가지고 있는지는 익혔다.

제일 특이한것은 들여쓰기가 괄호와 같이 작동한다는것이고 ..(어떻게 보면 신박하고 어떻게 보면 위험할지도)

self가 존재해서 객체 만들기에 좀 귀찮다는 것이다.

 

이제 shell을 통해 한줄한줄 실행해 보는것에는 조금 한계가 있다.

사실 shell은 결과를 바로 보기에는 좋지만, 프로그래밍은 불가능하다. 같은 맥락에서 IDLE편집기도 사실 컴파일에러를 잡아주거나 자동완성을 이용할수 없기 때문에 패스한다.

 

 

이제 갈림길에 온듯하다. IDE를 선택하는 것이다.

비쥬얼 스튜디오를 이용할수 있는듯 하고, PyCharm이라는 오픈소스 개발툴도 있는듯하다. 스크린샷을 보아하니 이클립스를 변형시킨듯 보이기도 하고 뭐 아직까지는 잘 느낌을 모르겠다. 그리고 마지막 궁극툴인 잡학대선생 이클립스에는 보나마나 파이썬 플러그인이 있을것이다.

 

 

본인은 이클립스는 많이 사용해봤으므로, C++로 갈아탈걸 생각하여 비주얼스튜디오로 가본다. 까는데 시간이 오래걸리는데.. 일단은 똥을 싸고 온다. 아 잠깐 그전에 몇가지 알아둘점은

 

주석은 # 이다.

 

scanf와 같은 기능을 해 입력을 받는건 input()함수이다. 깔끔하다. 좋다.

 

 

자 뭐 ..음 이정도로 일단은 마무리 하고 화장실을 다녀와서 계속하겠다. 절반정도 온것같다. 1시간 반이 지났으나 배가 고프고 내일 주말인데도 불구하고 회사가 봉사활동을 시키는 나머지 일단은 화장실을 가겠다.

 

나왔져염 각설하고 비주얼스튜디오가 아직 안꺌렸다. 공짜로 주는건 좋은데, 굳이 설치형으로 제공하지 말고 압축해서 주면 안되나.

아마 10분쯤 더 걸릴듯하니 아이스크림을 한스쿱 퍼먹고 오겠다.

 

자 이제, 참조사이트에서는 데이터베이스가 나오고 있다. SQLite를 쓰는것으로 .. 어? SQLite라 무시했는데 생각보다 충격이다. 오..그래 간단한 데이터베이스, 특히 트랜잭션이나 대규모 데이터 처리가 필요치 않은 것들은 무조건 설치가 간단하고 이용간단한게 최고다. import해서 그냥 냅다 쓰고있다..허ㅓ..

>>> import sqlite3
>>> sqlite3.version
'2.6.0'

 

>>> con = sqlite.connect("hi.db")

>>> cursor = con.cursor()

 

접속하고 이제 마음대로 쓰면된다.

 

>>> cursor.execute("CREATE TABLE stock(Name text, price int)")
<sqlite3.Cursor object at 0x02DB1BA0>
>>> cursor.execute("INSERT INTO stock VALUES('삼성전자',1400000)")
<sqlite3.Cursor object at 0x02DB1BA0>
>>> cursor.execute("SELECT * FROM stock")
<sqlite3.Cursor object at 0x02DB1BA0>
>>> cursor.fetchall()
[('삼성전자', 1400000)]

 

SQL은 ANSI형으로 먹는다. 당연하겠지..

 

 

 

마지막으로 한글을 위해 인코딩은 무조건 조심하자!

 

#-*-coding: utf-8 -*-

 

이걸 맨위에다가 주고 파일 저장도 UTF8 로 저장하라는데, 주석주제에 필요한가는 잘 모르겠지만 뭐 그런가보다. 그정도는 확인했겠지.

 

이제 개발을 할때 유용한 프로그램을 살펴본다.

 

IPython

아까 os를 이용해 콘솔처럼 다뤘다. 위 프로그램은 어차피 그럴꺼 그냥 리눅스 콘솔처럼 이용하는것이다. ls도 먹고, 패키지도 설치하고 그러함.

 

Matplotlib

일단 이 프로그램은 링크가 닫혔다. 어쨋거나, 뭐 이러한 프로그램으로 여러 그래프를 표현하거나 학술적인 거시기들을 할수 있는것 같다.

 

일단 유용한 라이브러리는 다음과 같다고 한다.

 

 

 

Matplotlib: 그래프를 그릴 때 사용하면 주식 차트등을 그릴 때 필요합니다.
Pandas: 데이터 분석에 많이 사용되며 시스템 트레이딩 알고리즘 개발에 필요합니다.
Pywin32: 증권사 API 등을 이용하는데 필요합니다.
PyQt: GUI 등을 구성할 때 필요합니다.
NumPy, SciPy: 배열 및 수치해석에 필요합니다.

 

 

자 근데 이러한것들이 서로서로 의존성이 있다. 무슨 Maven빌드고 sbt이고 짜증나니, 아나콘다라는 뭔가를 설치하는것 같다. 음.. 그게그거인것 같지만 어쨌든 추천해주니 까는것도 나름 나쁘지 않아서 일단은 아나콘다를 설치해본다. 링크 안되잖아!!

어쨌든 구글에 anaconda라고 썼더니 니키 미나즈가 떠서 다시 잘 찾아서 들어간다. 용량은 약 300메가..

남에게 붙어사는 주제에 꽤 용량이 크다. 일단 1분 43초가 남았다는데 그 안에 잘 못받을것 같다. 아니다 받았네

 

자 일단은 여기까지 한다... 내일 봉사활동을 가야하기 때문에.

 

기본적으로 여기까지 2시간 남짓 진행하는동안 느낀점은, 이 참조사이트가 참으로 친절하다는 것이다. 출판도 가능했을텐데 굳이 이러한 방식으로 인터넷 사이트를 제공하는 분이 참 감사하다고 느꼈다.

 

https://wikidocs.net/2225