Python 특징
• 파이썬은인터프리터 언어다.
• C, C++, JAVA 등의 언어는 컴파일 언어
• 컴파일 결과로 기계어를 뽑아 냄
• 이미 만들어진 기계어를 이용하여 프로그램이 실행
• 인터프리터는 고급 언어로 작성된 코드를 해석하여 실행
• 컴파일 된 기계어를 이용하는 게 아니라, 그때 그때 필요한 기계어를 생성해 씀
• 파이썬 버전
• 2와 3이 있음
• 버전 2는 2.7까지 나왔지만, 2.8이 배포될 계획은 없으며, 2020년까지 지원한다고 함
• 버전 2만 가능한 라이브러리때문에 2를 쓰는 경우도 있지만, 언젠가는 3으로 가야 함
5.
Python 특징
• 들여쓰기(인덴트,indent)
• 다른 언어들과 달리 파이썬은 들여쓰기를 강제함
• C나 Java에서 반복문, 함수의 범위를 위해 중괄호를 사용한 것처럼, 파이썬은 인덴트
를 이용하여 구분한다
• 들여쓰기 방법
• 탭 또는 space를 이용
• -> 파이썬 3에서는 탭과 스페이스를 섞어 쓰면 오류 발생
• 에디터에 따라 탭을 누르면 다수의 스페이스를 쓸 때도 있으니 주의한다
• 프로그램 전체에 일관성만 있다면 취향대로 씀
6.
Python 특징 –종류
• Cpython
• C로 작성된 인터프리터를 이용하는 파이썬
• 원조
• 가장 많이 쓰임 (일반적으로 파이썬은 Cpython을 의미)
• Jython
• 자바로 작상된 인터프리터를 이용하는 파이썬
• 자바 가상 머신에서 동작
• 모든 자바 클래스를 바로 불러올 수 있음
• PyPy
• 파이썬으로 작성된 파이썬 인터프리터
7.
PYTHON 프로그래밍
• 변수
•연산
• 문자열 다루기
• 조건문
• 반복문
• 함수
• 클래스
• 입출력
• 주석
• 라이브러리
• 예외 처리
8.
Python 프로그래밍 –변수
• C나 C++, Java와는 다르게 앞에 변수를 선언할 때 자료형을 명시하지 않는다
• 넣는 값에 따라 자료형이 자동으로 결정됨
• 단순히 변수이름 = 값 하면 됨
• Ex)
• numVar = 1
• 타입을 확인을 하고싶다면?
• type()함수 이용
9.
Python 프로그래밍 –변수
• 자료형
자료형 설명
없음(None) NULL 값 개체
정수(int) 일반 정수 (예 : 32)
정수(long) 긴 정수. 일반 정수로 쓰기에 너무 긴 정수로서, 접두사 ‘L’과 함께 사용
부동소수점수
(float)
부동소수점수. 10진수 또는 exponent sign을 포함하는 숫자
복소수(complex) 복소수. 실수와 허수부의 합으로 된 숫자로 표현
부울(Boolean) 참(True) 또는 거짓(False) 값 (1과 0의 숫자값으로도 표현). 맨 앞 대문자 주의
순서(Sequence) 다음과 같은 유형을 포함: 문자열, 유니코드 문자열, basestring, 리스트, 튜플
매핑(Mapping) 사전(dictionary) 형을 포함
집합(Set) 정렬되지 않은 유일한 개체의 모음으로서, 다음과 같은 유형을 포함: set, frozenset
파일(File) 파일 시스템 개체를 사용할 수 있도록 하는데 사용
반복자(Iterator) 컨테이너에 대하여 되풀이.
10.
Python 프로그래밍 –변수 – 자료형 – 리스트형
• 리스트형
• 대괄호를 이용하여 자료를 정의한다
• 빈 대괄호를 쓰면 빈 리스트를 생성
• 인덱스를 이용하여 각각의 아이템에 접근할 수 있다
• 서로 다른 타입의 데이터들을 저장할 수 있다
• 길이가 고정되어 있지 않다
• 저장된 값을 변경할 수 있다
• 똑같은 내용이 있어도 된다
• 반복문 for에 리스트를 넣으면 쉽게 리스트 순회 가능
• 반복문에서 다루겠음
11.
Python 프로그래밍 –변수 – 자료형 – 리스트형 - 추가하기
• 리스트형
• 내용 추가하기
• 멤버함수 append 이용
• 리스트의 맨 끝에 내용을 추가한다
• 멤버함수 insert 이용
• 리스트의 원하는 위치에 끼워 넣는다
• 해당 인덱스와 그 뒤에 있던 데이터들은 인덱스가 하나씩 밀려난다
• 리스트 붙이기
• +를 이용하여 리스트를 붙일 수 있다
12.
Python 프로그래밍 –변수 – 자료형 – 리스트형 – 슬라이스
• 리스트형
• 리스트의 일부를 떼어낼 수 있다
• [n:m]하면 인덱스 n부터 m-1까지 떼어낸다
• [:m] 하면 처음부터 m-1까지 떼어낸다
• [n:] 하면 n부터 끝까지 떼어낸다
• [n:m:p]하면 인덱스 n부터 m까지 떼어내며 p 단위로
인덱스를 건너 뛴다
• [::-p] 하면 뒤집힌 순서의 리스트를 얻을 수 있다
13.
Python 프로그래밍 –변수 – 자료형 – 리스트형 - 지우기
• 리스트형
• 지우기
• 멤버함수 remove
• 지우고 싶은 데이터를 찾아 지울 수 있다
• del
• 지우고 싶은 인덱스에 있는 데이터를 지울 수 있다
• 멤버함수 pop
• 인자로 넣은 인덱스에 있는 데이터를 반환한다
• 해당 인덱스의 데이터는 사라진다
14.
Python 프로그래밍 –변수 – 자료형 – 리스트형 - 기타
• 리스트형
• 멤버함수 index
• 인자로 준 값이 리스트에 있는지 살펴본다
• 해당 값이 리스트에 있다면 가장 앞에 있는 인덱스를 반환한다
• 해당 값이 리스트에 없으면 에러가 뜸
• 멤버함수 sort
• 리스트 내용을 순서대로 정리한다.
15.
Python 프로그래밍 –변수 – 자료형 – 사전형
• 사전형
• 중괄호를 이용하여 자료를 정의한다
• 빈 중괄호를 쓰면 빈 사전형 생성
• 키를 이용하여 각각의 아이템에 접근할 수 있다
• 서로 다른 타입의 데이터들을 저장할 수 있다
• 길이가 고정되어 있지 않다
• 저장된 값을 변경할 수 있다
• 중복되는 키는 있을 수 없다
• 순서가 없다
• 반복문 for에 리스트를 넣으면 쉽게 사전형 순회 가능
• 반복문에서 다루겠음
16.
Python 프로그래밍 –변수 – 자료형 – 사전형 – 추가/수정/삭제
• 사전형
• 추가하기
• 사전형[새 키] = 값 형태로 쓰면 키와 값이 추가된다
• 값 바꾸기
• 키를 이용해 접근하고 = 를 이용해 값을 바꾼다
• 지우기
• del을 이용하면 기존에 있던 키를 지운다
17.
Python 프로그래밍 –변수 – 자료형 – 사전형 – 기타
• 사전형
• 멤버함수 items
• 각 키-값 쌍을 튜플로 만들고, 그 튜플들의 배열을 리턴한다
• 멤버함수 keys
• 키들을 리스트 형태로 리턴한다
• 멤버함수 values
• 값들을 리스트 형태로 리턴한다
18.
Python 프로그래밍 –변수 – 자료형 – 튜플형
• 튜플형
• 소괄호를 이용하여 자료를 정의한다
• 인덱스를 이용하여 각각의 아이템에 접근할 수 있다
• 서로 다른 타입의 데이터들을 저장할 수 있다
• 길이가 고정되어 있다
• 저장한 값을 변경할 수 없다
• -> 값 변경이 불가능하다는 점을 제외하고는 리스트와 유사
• 반복문 for에 리스트를 넣으면 쉽게 튜플형 순회 가능
• 반복문에서 다루겠음
• 사전형의 키로 리스트형은 사용할 수 없지만, 튜플형은 사용할 수 있다
• ->변경되는 자료형인 리스트는 키로 부적합하다는 이유
19.
Python 프로그래밍 –변수 – 자료형 – 집합형
• 집합형
• 중괄호를 이용하여 자료를 정의한다
• 혹은 set 함수를 이용해 만들 수 있다
• 수학의 집합과 비슷하다
• 중복되는 값이 없다
• 순서가 없다
• 집합 연산과 비슷한 연산을 제공한다
• 서로 다른 타입의 데이터들을 저장할 수 있다
• 길이가 고정되어 있지 않다
• 반복문 for에 리스트를 넣으면 쉽게 집합형 순회 가능
• 반복문에서 다루겠음
20.
Python 프로그래밍 –변수 – 자료형 – 집합형 – 추가/삭제
• 집합형
• 추가
• 한 번에 하나 추가
• 멤버함수 add를 이용
• 한 번에 여러 개 추가
• 멤버함수 update를 이용
• 삭제
• 특정 값을 삭제
• 멤버함수 remove 사용
21.
Python 프로그래밍 –변수 – 자료형 – 집합형 – 연산
• 집합형
• 연산
• 교집합 (&)
• 집합형끼리 교집합을 구해 반환
• 합집합 (|)
• 집합형끼리 합집합을 구해 반환
• 차집합 (-)
• 집합형끼리 차집합을 구해 반환
• A<B
• A가 B에 포함되는 지 조사 (boolean 반환)
• A>B
• B가 A에 포함되는 지 조사 (boolean 반환)
22.
Python 프로그래밍 –변수 – 자료형 – 집합형 – 편리한 사용법
• 집합형
• 중복 제거
• 집합형이 중복을 허용하지 않는다는 특징을 이용해
간단히 중복을 제거하는 데 이용한다
• 집합 특성을 이용한 연산
• 차집합이나 교집합을 쉽게 구할 수 있음
23.
Python 프로그래밍 –산술 연산
• 덧셈, 뺄셈, 곱셈, 나눗셈, 모듈러는 여타 다른 언어와 같다
• Ex)
• num = 1+1
• num = 1-1
• num = 1*1
• num = 1/1
• num = 1%1
• 지수 연산이 있다
• **연산자를 이용하면 지수 연산을 한다
• Ex)
• n ** m 는 n^m
24.
Python 프로그래밍 –비트 연산
• 비트 연산자
• NOT : ~
• AND : &
• OR : |
• XOR : ^
• Shift : <<, >>
• n진수 숫자
• 2진수 숫자 이용법
• 숫자 앞에 0b를 붙임
• Ex) 0b1000 (십진수로 8)
• 16진수 숫자 이용법
• 숫자 앞에 0x를 붙임
• 10진수 -> 2진수 형식/8진수 형식/16진수 형식 문자열
• bin(), oct(), hex()
• n진수 문자열 -> 10진수 수
• int(문자열, 진수) 형태로 쓰면 10진수 수로 변환하여 반환
25.
Python 프로그래밍 –비교 연산
• 비교 연산자
• >, >=, ==, !=, <=, <
• 결과에 따라 True/False 반환
26.
Python 프로그래밍 –논리 연산
• 논리 연산자
• C나 Java와는 다르다(&&, ||, !를 사용하지 않음)
• AND : and
• OR : or
• NOT : not
27.
Python 프로그래밍 –문자열 다루기 - 정의
• 문자열
• 정의
• " 로 둘러싸거나 ' 로 둘러쌈 (별 차이는 없음)
• " 나 ' 를 3개 연달아 쓴 것으로 둘러쌈
• n를 직접 쓰지 않고 줄 바꿈이 포함된 문장을 쓸 수 있음
• 줄 바꿈이 어느 위치에서 일어나는지 주의!
• 문자열은 리스트 자료형과 유사하다
• 문자열의 일부를 변경할 수 없음
• string1[0] = "c" 와 같은 일 안 됨
28.
Python 프로그래밍 –문자열 다루기 – 추가하기
• 문자열
• 추가하기
• +를 이용하여 문자열을 붙일 수 있다
• 빈 문자열을 만들고 추가해 가는 것도 가능
• 문자열 삽입
• 멤버함수 join을 이용하면 인자로 받은 리스트나 문자
열 사이에 해당 문자열을 끼워 넣을 수 있다
29.
Python 프로그래밍 –문자열 다루기 – 떼어 내기
• 문자열
• 문자열의 n번째 문자를 얻는 방법
• 배열처럼 접근한다
• 인덱스는 0부터 시작
• Ex)
• p = " python "[0]
• 변수 p에 문자 p가 들어 감
• 주어진 범위의 문자열을 떼어내는 방법
• 리스트 형과 같이 [n:m] 형태를 이용하여 떼어낸다
30.
Python 프로그래밍 –문자열 다루기 – 관련 함수
• 문자열 관련 함수
• len()
• 문자열의 길이를 return
• 인자로 문자열만 넣을 수 있음
• str()
• 인자로 넣은 변수를 string형태로 변환한 것을 return
• string.upper()
• 문자열 객체의 멤버함수
• 알파벳을 전부 대문자로 변환
• string.lower()
• 문자열 객체의 멤버 함수
• 알파벳을 전부 소문자로 변환
• ->문자열 객체 함수와 일반 함수의 차이에 주의
31.
Python 프로그래밍 –조건문
• If문
• if 뒤 스페이스 후 바로 조건을 쓴다
• else if 대신 elif를 쓴다
• 조건에 True나 0이 아닌 수가 들어가면 해당 조건문 실행
• 조건에 False나 0이 들어가면 다음 조건문으로 넘어가거나 실행되지 않음
• 주의!
• : 를 잊지 말자
• 들여 쓰기(indent)을 잊지 말자
• 파이썬은 switch가 따로 없다.
• 비슷한 기능은 dictionary 자료형을 이용하여 직접 구현해야 한다
32.
Python 프로그래밍 –반복문
• 반복문에는 for와 while이 있다
• for
• for 변수 in range(반복할 횟수/범위) 형태
• range는 함수임
• for 변수 in 리스트/문자열/튜플형/사전형 형태
• for 변수, 변수 in enumerate(리스트/문자열/튜플형) 형태
• for/else 형태
• while
• while (조건식) 형태
• while/else 형태
• 주의!
• : 를 잊지 말자
• 들여 쓰기(indent)을 잊지 말자
• break/continue
• 반복문에서 사용 가능
33.
Python 프로그래밍 –반복문 – for
• for
• for 변수 in range(횟수) 형태
• 횟수만큼 반복한다.
• 변수에는 여태껏 반복한 횟수가 들어간다(0부터 시작)
• for 변수 in range(범위) 형태
• 범위를 n, m 형태로 적는다
• 변수에는 n부터 시작하여 m-1까지의 숫자가 들어간다
• 반복하는 횟수는 m-n
• range는 주어진 인자를 이용하여 연속된 숫자의 리스트를 생성하는 함수
• range(stop), range(start, stop), range(start, stop, step) 형태가 있음
• Ex)
• range(5) 하면 [0, 1, 2, 3, 4] 리스트를 생성
• range(2, 4)하면 [2, 3] 리스트 생성
• range(1, 5, 2)하면 [1, 3] 리스트 생성
• step 한 번에 증가할 크기를 의미
34.
Python 프로그래밍 –반복문 – for
• for
• for 변수 in 리스트/문자열/튜플 형태
• 리스트/문자열/튜플의 길이만큼 반복한다
• 변수에는 반복한 횟수를 인덱스로 하는 리스트 값이 저장된다
• for 변수 in 사전형 형태
• key 개수만큼 반복한다
• 변수에는 키가 들어간다
• 키를 이용하여 사전형 데이터에 접근
35.
Python 프로그래밍 –반복문 – for
• for
• for 변수1, 변수2 in enumerate(리스트/문자열/튜플)
형태
• enumerate함수는 순서가 있는 자료형(리스트, 문자열,
튜플)을 인자로 받고, 인덱스를 포함하는 enumerate
객체를 리턴한다
• 변수 1에는 인덱스가, 변수 2에는 값이 들어 감
36.
Python 프로그래밍 –반복문 – for
• for
• for/else 형태
• break으로 끝나지 않고 정상적으로 반복문이 끝났을 경우
else문을 실행
• break으로 나왔을 경우 실행하지 않음
37.
Python 프로그래밍 –반복문 – while
• while
• while(조건식) 형태
• 조건식이 True인 경우 반복한다
• while/else 형태
• 조건식이 맞지 않을 경우 else를 실행한다
• 정상적으로 루프를 마친 경우
• 아예 처음부터 루프 조건에 맞지 않아 while문 내부를 실행하지 않은 경우
• break를 이용해 루프를 나왔을 경우 else를 실행하지 않는다
38.
Python 프로그래밍 –함수
• 함수 정의
• def 함수이름(인자): 형태로 쓴다
• 함수에 속하는 코드는 들여 쓴다(indent)
• 줄맞춤이 되어있는 곳까지 함수 영역으로 인식
• return값의 자료형, 인자의 자료형은 따로 명시하지 않는다
• 프로그래머가 주의해서 인자를 넣어야 한다
• return이 없어도 된다
• 줄맞춤이 끝나는 곳까지 함수로 봄
• 주의!
• 들여 쓰기(indent)을 잊지 말자
• :를 잊지 말자
39.
Python 프로그래밍 –함수
• 람다(Lambda) 함수
• 이름이 없는 함수
• 단순히 일회용으로 쓸 수 있음
• 함수를 정의해두고 쓰는 게 아니라, 필요할 때 잠깐 만들어 쓰고 버릴 수 있음
• 함수가 사용될 수 있는 곳에는 어디라도 람다 정의를 넣을 수 있다
• lambda 인자 : 작업 형태로 정의
• 사용할 때는 (인자) 형태로 인자를 넣음
• 주로 filter 함수, map 함수, reduce 함수와 함께 쓰인다
40.
Python 프로그래밍 –클래스
• 클래스
• 파이썬은 OOP 언어
• 변수, 함수를 묶어 클래스를 만들 수 있다
• class 이름: 형태
• 상속하지 않을 때
• 권장하지는 않음
• 상속이 없을 경우 밑의 형태에서 상속할 클래스 이름에
object를 쓸 것
• class 이름 (상속할 클래스 이름): 형태
• 상속할 때
• 주의!
• indent를 맞춰주어야 한다
• :를 잊지 말자
41.
Python 프로그래밍 –클래스 – 생성자
• 클래스
• 생성자
• 객체 인스턴스를 생성하며 초기 설정을 해 줌
• def __init__(인자): 형태
• 멤버함수와 생성자의 맨 처음 인자는 반드시 self
• 파이썬의 관습
• 생성된 인스턴스 자기 자신을 가리킴
• 멤버함수에서 객체의 변수를 가리키기 위해서는 self를 참조해야 함
• 호출할 때는 자동으로 객체를 전달해 주기 때문에 self와 관련된 인자를 쓸 필요가 없음
42.
Python 프로그래밍 –클래스 – 함수
• 클래스
• 함수 (메소드)
• 멤버함수의 맨 처음 인자는 반드시 self
• 호출할 때는 자동으로 객체를 전달해 주기 때문에 self와
관련된 인자를 쓸 필요가 없음
43.
Python 프로그래밍 –클래스 – 상속
• 클래스
• 상속
• class 이름(상속할 클래스 이름): 형태
• 부모 클래스의 변수와 함수를 이용할 수 있다
• 부모 클래스 함수를 오버라이딩 할 수 있다
• 같은 이름, 다른 기능
44.
Python 프로그래밍 –클래스 – 상속
• 클래스
• 상속
• 부모 클래스의 생성자 호출하기
• 자식 클래스에서 직접 부모 클래스를 구한 후, 부모 클래스의
생성자를 호출해 주어야 한다
• super 는 자식 클래스를 지정하여 부모 클래스에 정의한 메소드
에 접근할 수 있는 키워드
• super(자식 클래스 이름, 인스턴스) 형태로 사용
• 자식 클래스에서 생성자를 재정의하지 않았다면 자동으로
부모 클래스의 생성자가 호출된다
45.
Python 프로그래밍 –클래스 – 상속
• 클래스
• 상속
• 부모 변수 접근하기
• 클래스 내에서
• self를 이용하여 접근
혹은 super를 이용하
여 얻은 parent를 이
용
• 외부에서
• 인스턴스.변수이름
으로 접근할 수 있다
46.
Python 프로그래밍 –클래스 – 상속
• 클래스
• 상속
• 오버라이딩
• 자식 클래스에 함수 이름과 인자 수가 같은 함수를
정의하면 자식 클래스에서 정의한 함수를 호출한다
47.
Python 프로그래밍 –입출력 – 출력
• 출력하는 함수
• print
• 포맷 스트링 출력하기
• print "%d %s" %(num1, string1)
• 문자열 합쳐 출력하기
• +
• 문자열을 그대로 붙일 수 있음
• ,
• 띄어쓰기한 문자열을 붙일 수 있음
• 문자열을 합칠 때가 아니더라도 ,가 붙으면 띄어쓰기 함
48.
Python 프로그래밍 –입출력 – 입력
• 입력 값을 받는 함수 (파이썬 2.7)
• input과 raw_input
• 인자로 넣은 메시지를 출력한 뒤 입력을 받는다
• 이 때도 포맷 스트링을 출력할 수 있다
• input
• 받은 입력 값을 적절한 자료형에 맞게 반환한다
• 1을 입력하면 정수, 1.0을 입력하면 실수, "나 '로 감싼 것은 문자열로 반환
• raw_input
• 받은 입력 값을 문자열로 반환한다
• 파이썬 3부터는 input 함수가 raw_input과 같다
• 문자열 반환함. raw_input 함수는 없어짐
• ->문자열 외 자료형은 직접 자료형 변환해야 함
49.
Python 프로그래밍 –입출력 – 파일 I/O
• 파일 열기
• open(파일 이름, 모드)
• 모드는 r, w, r+, a가 있다
• r : read-only
• w : write-only
• r+ : read and write
• a : append
• r, w, a 뒤에 b가 붙으면 binary
• 함수는 연 파일 객체를 반환한다
• 파일 닫기
• 멤버함수 close
• 파일 객체에 속한 메소드
50.
Python 프로그래밍 –입출력 – 파일 I/O
• 파일 읽기
• 읽기 가능한 모드에서 가능
• 멤버함수 read
• 인자가 없을 시 파일 내용 전체를 문자열로 반환한다
• 인자로 숫자를 넣을 시 n글자(n바이트)만큼 읽은 문자열을 반환
• 멤버함수 readline
• 인자가 없을 시 파일에서 한 줄을 읽어 문자열로 반환한다
• 인자로 숫자를 넣을 시 n글자(n바이트)만큼 읽은 문자열을 반환
• 멤버함수 readlines
• 인자가 없을 시 파일 내용 전체 읽고, 각 줄을 요소로 갖는 리스트를 반환한다
• 인자로 숫자를 넣을 시 n 줄을 읽고, 리스트로 반환
• 오른쪽 예는 모두 파일을 끝까지 읽고 콘솔에 쓰는 코드
51.
Python 프로그래밍 –입출력 – 파일 I/O
• 파일 쓰기
• 쓰기 가능한 모드에서 가능
• 멤버함수 write
• 인자로 str을 받는다
• 문자열 쓰기만 가능
• 버퍼링
• 파일에 write할 시 매번 실제로 파일에 쓰지는 않는다
• 어느정도 버퍼에 넣어두었다가 한 번에 저장한다
• ->저장한 뒤 당장 읽고 싶다면 버퍼를 비워주어야 한다
• 그 방법 중 하나가 파일을 close하는 것
52.
Python 프로그래밍 –입출력 – 파일 I/O
• with as
• 매번 파일을 close하는 게 귀찮고 헷갈림
• ->with as를 이용하면 편하게 처리할 수 있다
• with open(인자) as 파일 객체 이름 : 형태
• with as 구문을 벗어나면 자동으로 close를 호출해 준다
53.
Python 프로그래밍 –주석
• #을 앞에 붙이면 그 줄을 주석으로 만든다
• C의 //와 같음
• " 혹은 '를 3개 연달아 붙인 것으로 둘러싸면 그 안은 주석이 된다
• Ex) " " " 주석 " " ", ' ' ' 주석 ' ' '
• 주의!
• 인덴트를 맞춰주어야 한다
• #은 인덴트 맞춤 필요 없음
• " " "와 ' ''는 문자열로도 이용된다.
• 위치에 따라 (변수 선언, print 뒤 등) 문자열로 이용될 수 있으므로 주의
54.
Python 프로그래밍 –라이브러리
• 라이브러리를 도구상자라 비유해보자. 그리고 모듈과 패키지에 대해 생각해 보자.
• 모듈 (module)
• 여러 기능을 제공하는 클래스나 함수
• 도구 상자 속 각각의 도구와 같음
• 패키지(package)
• 복수의 모듈을 하나로 묶은 것
• 드라이버 세트로 비유할 수 있음
패키지
패키지
모듈모듈 모듈 모듈
55.
Python 프로그래밍 –라이브러리 사용
• import
• 도구 상자에서 도구를 찾아 손에 쥐는 것
• import 모듈명 형태로 이용
• as
• 모듈의 클래스나 함수를 이용하기 위해 매번 모듈의 이름을 씀
• ->모듈 이름이 길다면 불편함
• as 키워드를 이용하면 모듈에 간단한 이름을 붙여 사용할 수 있음
• import 문장 맨 뒤에 씀
• from
• 패키지에서 특정 모듈만 얻어오거나, 모듈에서 특정 클래스와 함수만 사용하도록 할 수 있음
• from 패키지(모듈)이름 import 모듈 이름(클래스/함수 이름) 형태로 이용
• Universal import
• import에 *을 쓰면 해당 모듈에 속한 함수들을 전부 모듈 이름을 쓰지 않고 호출할 수 있음
• 같은 이름의 함수나 변수가 있다면 혼란이 생길 수 있으므로 권장하지는 않음
56.
Python 프로그래밍 –예외처리
• 에러의 종류
• 파이썬 구문(문법)이 잘못되었을 때
• ->아예 해석 자체가 안되므로 실행이 안 됨
• 실행 중에 데이터를 처리할 수 없을 때
• ->실행하지 않으면 에러가 되지 않는다.
• ->이것이 예외에 속함
• try except를 이용
• try로 감싼 코드에서 예외가 생기면 except 코드를 실행
• except에서 예외의 종류를 잡는 법
• except Exception as 변수이름 :
• 변수에 예외에 대한 정보를 넣어 줌