Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Python Study 1- Introduction

Python Study 1- Introduction

AhnSeongHyun

April 30, 2015
Tweet

More Decks by AhnSeongHyun

Other Decks in Programming

Transcript

  1. 오늘 다룰 것들. 2 파이썬을 배워야 하는 이유 어디에 써

    먹는건지? 버전의 딜레마 다른 언어랑 다른점 코딩하기 전에 IDE 만들어진 계기 파이썬에 대해서 파이썬 설치
  2. 3 귀도 반 로이섬(58세), 네덜란드 크리스마스 주에 연구실이 닫혀 있어서

    심심해서 만든 파이썬 만듦. 구글 => 드롭박스(현) 만들어진 계기
  3. 파이썬, 배우기 쉽다. 5 문법 자체가 단순, 간단한 자료형 괄호도

    없이 들여쓰기 만 지켜주면 됨. TAB < 4-Space C/C++ 보다는 쉽다. 포인터의 지옥 설치도 쉽고. (자바에 비해) 인터프리터라 바로 바로 확인하는 방식
  4. 6 @Objective-C NSDictionary *dict = [[NSDictionary alloc] init]; @C# Dictionary<string,

    string> dict = new Dictionary<string, string>(); @Java Hashtable< String, String> dict = new Hashtable()<String, String>(); @Python dict1 = [] dict1 = dict() Dictionary 선언의 예
  5. 7 @JavaScript str.substring(0, 3); @C# str.Substring(0, 3); @Python str[:3] substring

    의 예 sublist 의 예 @JavaScript list.slice(0,3); @C# list.GetRange(0, 3); @Python list[:3]
  6. 파이썬, 열려있다. 8 속도의 경쟁, 바퀴를 또 만들 순 없다.

    오픈소스를 예전보다 많이 활용. Django, Flask 도 프레임워크이자 오픈소스. PyPI(Python Package Index) 라는 파이썬 모듈 패키지 관리 pip 를 통해서 쉽게 외부 모듈을 가져다 쓰는 형태로 발전 만들고 공개하고 재배포함으로써 생태계가 커짐. (43876개의 패키지)
  7. 왜 배워야 하는가? 9 빠른 개발 방식의 트렌드 스크립트 언어의

    필요성. 프로토타입용 언어로서 최고. + 쉽고, 사용할 수 있는 게 많다.
  8. 파이썬, 어디에 써 먹는건지? 10 데이터베이스 연동 수치연산 GUI 프로그램

    하드웨어 연동 프로그램 시스템 유틸리티 빠른 속도를 필요로 하는 C/C++ 연동 웹
  9. 다른 언어랑 다른 점? 11  동적타이핑 - 데이터 형(data

    type)의 검사를 실행할 때 수행한다.  인터프리터 언어 - 컴파일러와 다르게 코드를 한번에 한줄씩 명령어로 읽어서 실행 - 빠른 로드를 위해서 바이트 코드를 자동 생성(자바는 명시적 생성)  플랫폼에 독립적인 언어  자동으로 관리되는 메모리  1급 함수(First Class Function), 다중상속 지원  높은 확장성 with c/c++, Jython(JVM), IronPython(.NET)
  10. 2 와 3 의 차이 12 차이점  print 문의

    차이 - 괄호, 끝문자, 출력 등 지정 print "ash84" print("ash84") print("ash84", "good", sep="=", end="?") > ash84=good? @2.X @3.X  long => int 대체 print type(2**31) ><type 'long'> @2.X Print(type(2**31) ) ><type 'int'> @3.X
  11. 2 와 3 의 차이 13 차이점  자동형변환 >

    3 / 4 > 0 > 3 / 4.0 > 0.75 @2.X @3.X  소스코드 인코딩 # -*- coding:utf-8 -*- @2.X 3.X 부터는 소스코드가 UTF-8 인코딩이 Default > 3 / 4 > 0.75
  12. 버전의 딜레마 14 엄마가 좋아? 아빠가 좋아? 같은.. 하위호환성을 지켜주지

    않아서 문제. 2.X 의존하는 필수 라이브러리가 있으면, 2.X 한글처리, 유니코드 처리가 많으면, 3.X 그러나, 여전히 많은 라이브러리들이 2.X에 의존적. 웬만하면, 2.7 버전을 아직까지는 사용하는 것이 좋다.
  13. 15 설치법 - 윈도우 https://www.python.org/downloads/ ↑ 들어가서 원하는 파이썬 버전

    선택 후, 설치 실행파일(.msi) 실행. 제어판>시스템>고급시스템 설정>환경변수>Path 에 설치된 파이썬 디렉토리 추가하면 끝.
  14. 16 설치법 - 리눅스(맥포함) 친절하게도 미리 설치 되어 있음. -

    Ubuntu - CentOS - RedHat - Mac OSX 그러나, 버전이 다를 수 있음. 업그레이드 하는 방법을 알아보자.
  15. 17 설치법 – 리눅스(맥포함) 2.X가 설치되어 있다는 가정하에.. 3.X로 업그레이드

    해보자. > python Python 2.7.5+ (default, Sep 19 2013, 13:48:49) [GCC 4.8.1] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> > wget https://www.python.org/ftp/python/3.4.0/Python-3.4.0.tgz > tar xvzf Python-3.4.0.tgz > ./congifure > make > sudo make install > cd /usr/bin > ln -s python3.3 python > python Python 3.3.2+ (default, Oct 9 2013, 14:50:09) [GCC 4.8.1] on linux Type "help", "copyright", "credits" or "license" for more information. 파이썬 소스를 받아서, 빌드를 해서 설치를 한 후, 심볼릭 링크로 python3.3을 잡아주면 끝.
  16. 18 설치 경로 Doc : 도움말 include : 관련 C

    소스코드 lib: 파이썬 기본 라이브러리의 소스 위치(sys, hashlib ..) lib/site-packages : pip, setup.py 등을 통해서 다운로드 받은 외부 라이브러리 소스위치 Scripts : 어디에서나 사용할 수 있는 파이썬 관련 파일의 위치(pip, easy_install) Tools : 2to3, i18n, checkversions 등의 파이썬 관련 툴 스크립트 위치
  17. 코딩하기 전에 IDE 19 $199 쯤 투자? => PyCharm3 (http://www.jetbrains.com/pycharm)

    ! Django, Flask 등의 웹 프레임워크와의 연동이 쉽다. ! 너부 비쌈. 개인은 커뮤니티 버전 사용추천, 1년에 한번 세일.
  18. 코딩하기 전에 IDE 20 자바 개발환경에 익숙 => Eclipse +

    Pydev(http://cafe.naver.com/digitaldream/2104) ! 자바를 개발하시는 분은 Eclipse로 단번에 해결. 빌드 가능 ! 무거워지는 Eclipse는 어찌할까?
  19. 코딩하기 전에 IDE 21 이클립스가 무겁다면 => Aptana studio3(http://aptana.com/products/studio3) !

    이클립스에서 자바만 뺀 형태, 파이썬 전용 이클립스라고 생각하면 됨.
  20. 코딩하기 전에 IDE 22 무료가 짱이야 => SublimeText2/3 ! 적당한

    수준의 자동완성 + 빌드 ! Django, Flask 에 대한 직접적인 지원은 없음.
  21. 코딩하기 전에 IDE 23 유닉스 빠 => vi ! 비추,

    서버에서 간단히 고치는 용도일 뿐. ! 그렇지만, 유닉스에 능통하신 분들은 다르다능.
  22. 코딩하기 전에 IDE 24 뭐니뭐니해도 => Visual Studio 2013 +

    PTVS(http://pytools.codeplex.com/) ! Express 가 아닌 정품에 설치됨.
  23. 코딩하기 전에 IDE 25 제가 사용하는 방식.. SublimeText2/3 - 기본

    텍스트 툴로 사용. - 작은 스크립트 단위 개발 시 Pycharm3 Community Version - django, flask 등 웹 프레임워크를 사용해서 개발 시 - 뭔가 구조를 잡고 개발하는 경우 ! 본인이 자주 써왔던, 익숙한 툴과 연계하는 것이 좋음.
  24. 정리 26 파이썬은 쉽고, 그래서 빨리 개발 할수 있고, 가져다

    쓸게 많아서 강력하다. IDE는 알아서 선택. 버전은 아직은 2.7을 사용하자. 다음 시간에는 자료형, 변수, 함수 등등에 대해서..