2011 Django Seminar #1 KAIST 09 학번 차동훈 ( Snogar )
Special Thanks To “ 발로 하는 파이썬 세미나 ” - tokigun
Django? Python? Django Web Framework 웹 어플리케이션 개발 Django 는 Framework 지, Language 가 아님 내부적으로 Python 사용 Why Python? C++ ? Java ? Scala ?
Why Python? 간결하고 우아한 문법 방대한 라이브러리 객체지향 모델 빠르고 안정적 다양한 웹 서버 지원 다양한 데이터베이스 지원 Free Software “ 빠르게 짜고, 빠르게 확인하고, 빠르게 고친다.”
예를 들어볼까 ? int i ; bool flag = false; // tofind : 찾고자 하는 값 for(i=0; i<n; i++){ if( tofind==data[i] ){ flag = true; break; } if ( flag == true ) {... }
예를 들어볼까 ? if tofind in data: … 간단하고 명시적이고 무엇보다 편하고 빠르다 !
자 그럼.. 알맞은 반응은 ? 1. 파이썬 공부가 엄청나게 하고 싶어졌어요 ! 2. 파이썬이 재밌어 보여요 ! 3. 파이썬을 공부하지 않으면 안될 것 같아요 !
Python 연습 환경 자기 컴에 깔려면 이용 ! 하지만 우릴 위해서 특별히 준비한 개발 서 버를 이용하도록 합시다 Putty 로 django.sparcs.org 로 접속 ! python 을 쳐보아요
이것 저것 쳐봅시다
이건 다들 알겠죠 ? 자료형 정수 문자 문자열 참 / 거짓 실수 변수 Python 에서의 자료형 이름은 ? 이런 건 필요하면 구글링해서 쓰면 돼요.
조건문 (if) >>> grade = 1.86 >>> if grade < 2.0: (3.0 – 2.0) * elif grade < 3.0: (3.0 – grade) * else:
조건문 (if) >>> grade = 1.86 >>> if grade < 3.0:... if grade < 2.0: (3.0 – 2.0) * else: (3.0 – grade) * else:
반복문 (for) >>> sum = 0 >>> for i in range(10):... sum = sum + i >>> print sum in? range(10)?
in? range()? for i in range(10): in : List 혹은 Tuple 안의 값들을 차례대로 불 러오고자 할 때 사용 range(x) : 이건 직접 쳐봅시다 ! >>> range(10) [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
in? range()? for i in range(10): i 에 [0,1,2,3…9] 를 차례대로 불러와라 i=0, i=1, i=2, … i=9 for ( i = 0 ; i < 10 ; i ++) 와 의미가 동일
여기서 잠깐 Django 맛보기
뭐가 남았을까 ? List Tuple Function 여기까지만 알아두면, Django 다룰 때 별 문 제 없어요. 기초중의 기초 !
List 와 Tuple? [0, 1, 2, 3, 4] – List (0,1,2,3,4) – Tuple [4, 5, ‘hello’] – List (4, 5, ‘hello’) – Tuple [‘hello’] - List (‘hello’,) – Tuple (‘hello’)
List >>> a = [1,2,3] >>> a[0] + a[1] + a[2] >>> a[1] = 5 >>> a 얼렁 쳐봅시다 !
Tuple >>> b = (1,2,3) >>> b[0] + b[1] + b[2] >>> b[1] = 5 >>> b 얼렁 쳐봅시다 !
Tuple >>>staffs = [ (‘ 정진근 ’, 2007, 4.3), (‘ 차동훈 ’, 2009, 3.29), (‘ 차준호 ’, 2010, 4.29), ] >>>for person in staffs: name, year, GPA = person print name, year, ‘ 학번 ’, GPA, ‘ 점 ’
Tuple >>>for person in staffs: name, _, GPA = person print name, GPA, ‘ 점 ’ _ 를 이용하여 Tuple 의 원소를 안받고 넘어 갈 수도 있다 List 와 다른 장점을 가진 Tuple :D
Function staffs List 를 재활용하여 돈을 내는지 아닌지 를 확인하는 함수를 작성해 봅시다. >>> def isHell ( getGPA ):... if getGPA <3.3:...return True...return False
자 이제 다 배웠다 ! 근데..
Python 을 제대로 배우려면 ? 여러분은 기초중 기초만 배웠습니다
아주 간단한 과제 ! vi practice.py 를 한 뒤 코드 작성을 합니다 실행은 저장한 뒤 python practice.py 입력 SPARCS 선배 ( 혹은 동기 ) 중에 이름에 ‘ 훈 ’ 이 들어가는 사람 중 전화번호가 nugu 에 등록 된 사람들을 List 와 Tuple 을 이용하여 만들고, for 문을 돌면서 05 학번 이하의 이름과 아이 디만 출력하는 프로그램을 작성하세요. Ex) [(‘ 차동훈 ’, ‘snogar’, ‘ ’)]