*예외 처리

- 예외 : 프로그램에서 벌어지는 예외적인 상황(에러)을 의미

ex)파일을 읽고 그 안에 파일내용이 지워지거나 삭제

 

 

오류가 발생하는 예

 

#디렉터리 안에 없는 파일을 열려고 시도했을때

 

 

이와 같이 File Not Found 에러 발생

 

#0으로 다른 숫자를 나누려고 했을때

 

 

Zero Division 에러 발생

 

#자주 일어나는 Index 에러

 

 

a 리스트에서 얻을수 없는 값인 a[4]를 호출 했기 때문에

index 에러가 발생한것이다.

 

*오류 예외 처리 기법

 

try:오류날꺼같은 문장  

    수행명령

 

except:FileNotFoundError:       

수행 print("파일이없다.")

 

except:

수행

 

else:

(예외가 발생하지 않은경우)

finally:

예외발생 유무 상관없이 try블록 이후 수행

 

#예외 처리 기법을 이용한 예

 

 

 

 

 

#오류 회피하기

 

 

 

 

#raise 명령어를 이용해서 오류 강제로 발생시키기

 

 

Ealge 클래스에서 fly 함수를 구현하지 않았기 때문에

Bird 클래스의 fly 함수 호출

raise문에 의해 에러 발생

 

#에러가 발생하지 않게하기위해선 fly함수를 구현

 

 

 

 

'Python > Python' 카테고리의 다른 글

Python [모듈]  (0) 2017.08.19
Python [클래스]  (0) 2017.08.13
Python [함수,입출력,파일읽고쓰기]  (0) 2017.08.11
Python [조건문if,반복문while,for]  (0) 2017.08.09
Python [집합자료형]  (0) 2017.08.08

*모듈

 

-함수,변수,클래스들을 모아놓은 파일

#모듈 만들고 불러오기

-모듈은 반드시 저장된 위치로 이동한후 실행해야한다.

 

 

 

 

IDLE를 통해 파일을 만들고

 

cmd를 이용해서 파일이 저장된 위치를 입력하고 파일을 불러온다.

 

#import 모듈 사용방법

 

- import 모듈이름

 

 

 

#mod의 다음과 같은 함수를 추가해 다음과 같이 호출해보자

 

 

 

 

#from 모듈이름 import 모듈함수1,모듈함수2

 

#from 모듈이름 import*

 

바이트 코드 형태의 (컴파일 파일).pyc

파이썬에서 모듈을 불러올때 좀 더 빠르게 처리할수있도록

하기 위해서 .pyc

 

 

#거북이 모듈

- 그림그리기 모듈

 

import turtle

t = turtle.Pen()

 

#터틀 함수

forward(거리) /fd

t.forward(100)

--> 거북이가 100만큼 앞으로 이동한다.

 

-backward(100)

-->거북이가 100만큼 뒤로 이동한다

 

각도 (left(각도),right(각도))

>>> t.left(50)

>>> t.fd(200)

>>> t.right(50)

>>> t.right(50)

>>> t.forward(200)

 

**lt(),rt()

 

- circle(반지름)

--> 반지름이 50인 원을 그린다

 

- 꼬리를 내려서 선을 그린다.

  꼬리를 올려서 선을 그리지않는다.

 

  up / penup()

  down / pendown()

 

- 그래픽모양을 바꾸겠다.

shape("모양")

 

- 속도

- speed(속도)

 

- 굵기

- pensize(굵기)

 

- 펜 색깔

- color("색 이름")

 

- 배경색 바꾸기

- bgcolor("배경 이름")

 

- 도형 내부에다가 색칠하는 경우

 

fillcolor("색 이름")

 

-end_fill()

도형 내부를 색칠합니다.

 

-화면 표시한다. 안한다.

showturtle() / st() - 표시

hideturtle() / ht() - 숨기기

 

- clear()

화면에서 거북이를 놔둔채 지운다.

 

화면을지우고 거북이를 제자리에 놓는다.

- reset()

 

# 별모양 만들기

 

 

#사용자로부터 입력받아 이름을 출력하겠다.

 

 

#6개의 원 그리기

 

 

 

'Python > Python' 카테고리의 다른 글

Python [예외처리]  (0) 2017.08.22
Python [클래스]  (0) 2017.08.13
Python [함수,입출력,파일읽고쓰기]  (0) 2017.08.11
Python [조건문if,반복문while,for]  (0) 2017.08.09
Python [집합자료형]  (0) 2017.08.08

*클래스란?

- 함수,변수들을 모아놓은 집합체

- 클래스는 객체의 틀이 되는 추상적인개념

  객체는 클래스에 정의된 요소들의 실체

- 인스턴스를 만들어내는 공장과도 같다. (인스턴스의 설계도와 같다.)

 

#클래스 선언방법

 

class 클래스명:

       변수,함수

**클래스명 Test (첫글자는 대문자)

 

#클래스를 살펴보자 (계산기)

 

 

클래스를 이용하면 계산기의 개수가 늘어나더라도 인스턴스를 생성하기만 하면 되기 때문에

함수를 사용하는 경우와 달리 매우 간단해진다.

 

class Sample:

    pass #조건,반복문 클래스,함수 빈공간 남겨놓을때 pass

            #빈클래스 - 아무기능이 없다.

            #틀을 만들지않았다.

a = Sample() #sample() 결과값을 돌려받은 a - > 객체 인스턴스

 

- 클래스는 틀 인스턴스란 클래스에 의해 만들어진 모양

 

#클래스의 변수와 함수

변수

- 클래스에 소속된 변수들을 필드(Field) - 맴버변수

함수

- 클래스(객체)내에 어떤 기능을 갖을수있는 함수

  함수들을 클래스의 메소드(method)

- 클래스로 만든 객체는 그 객체인지 확인하는 공간 self

  함수를 사용할때 확인(self)

- 파이썬에서만 self 선언 클래스 객체

(self -> 매개변수)

 

#클래스 선언

 

 

 

 

 

 

self 이용

 

 

*__init__ 이란 ?

 

init메소드 : 객체가 생성될때 여러가지 초기화작업을 할때

                무조건 선언된다.

메소드명 : '__init__'

파이썬에서는 클래스 여러가지 특별한 메소드가 존재

 

** 필드는 해당 클래스 또는 객체 내부에서만 의미가있다.

** 클래스 변수는 공유가 된다.

 

__init__을 이용한 예

 

 

#클래스를 이용하여 핸드폰을 구별하는 클래스를 만들어보자.

 

 

#ooo집 이름출력 클래스

 

 

 

#__init__ 메소드(method)로 초깃값 설정

 

 

*클래스의 상속

 

- 물려받는다.

- 재산을 상속받는다.

 

Houseking이 Housepep을 상속받음

 

class Houseking(Housepep):

lastname ="king"

 

 

 

#연산자 오버로딩

 

연산자를 객체끼리 사용할수있게하는 기법이다.

 

 

 

'Python > Python' 카테고리의 다른 글

Python [예외처리]  (0) 2017.08.22
Python [모듈]  (0) 2017.08.19
Python [함수,입출력,파일읽고쓰기]  (0) 2017.08.11
Python [조건문if,반복문while,for]  (0) 2017.08.09
Python [집합자료형]  (0) 2017.08.08

+ Recent posts