내가 보려고 만드는/파이썬

[파이썬] 6주차 KMOOC - turtle, 예외처리

gaga_ 2021. 10. 7. 20:32

Turtle

 

 

Module 'turtle'

  • 화면에서 그래픽 처리를 일부분 할 수 있도록 한다
  • turtle을 사용한다는 표시를 해주어야 한다               -> import turtle
  • 객체 지향적, 절차 지향적 방법으로 그래픽을 표현할 수 있도록 지원한다
  • 간단한 그래픽 처리만 가능하다
  • 다양한 그래픽 활용은 'Tkinter'를 사용                     -> 학기 후반부에 배울 것

 

import turtle

 

 

import as

alias(가명)의 줄임말

필요에 의해서 모듈의 이름의 alias를 준다.

따라서 매번 모듈의 full name을 쓰지 않고도 alias만으로도 코드 작성이 가능하다.

import math as m

m.pi
3.141592653589793
m.sqrt(3.0)
1.7320508075688772

 

turtle 메소드

 

 

 

함수

 

def

파이썬 함수의 구조는 다음과 같다.

 

 

함수명은 임의로 지정할 수 있으며, 매개변수(parameter)는 해당 함수에 입력으로 전달되는 값을 받는 변수이다.

매개변수는 있을 수도 있고, 없을 수도 있다.

 

함수에서 return 값이 있을 수도, 없을 수도 있으며

parameter가 있을 수도, 없을 수도 있다.

또한 둘 다 없을 수도 있다.

 

https://wikidocs.net/24

 

 

 

예외 처리

 

 

try, except

try 블록 수행 도중 오류가 발생하면 해당 except 블록이 수행된다.

하지만 try 블록에서 오류가 발생하지 않는다면 except 블록은 수행되지 않는다.

 

try, except 구문의 기본적인 구조는 다음과 같다.

try:
	예외가 발생할 가능성이 있는 코드
except:
	예외가 발생했을 때 실행할 코드

 

else

try except 구문 뒤에 else 구문을 붙여서 사용하면 "예외가 발생하지 않았을 때 실행할 코드"를 지정할 수 있다.

 

 

finally

finally 구문은 예외 처리 구문에서 가장 마지막에 사용할 수 있는 구문이다.

예외가 발생하든 발생하지 않든 무조건 실행할 때 사용하는 코드이다.

보통 finally 절은 사용한 리소스(파일 등)을 close 해야 할 때 많이 사용한다.

 

try:
	예외가 발생할 가능성이 있는 코드
except:
	예외가 발생했을 때 실행할 코드
else:
	예외가 발생하지 않았을 때 실행할 코드
finally:
	무조건 실행할 코드

 

try, except, finally 구문의 조합

예외 처리 구문은 다음과 같은 규칙을 지켜야 한다.

  • try 구문은 단독으로 사용할 수 없으며, 반드시 except 구문 또는 finally 구문과 함께 사용해야 한다.
  • else 구문은 반드시 except 구문 뒤에 사용해야 한다.

 

이를 조합해보면 다음과 같다.

이 외의 조합은 실행했을 때 구문 오류가 발생한다.

  • try + except
  • try + except + else
  • try + except + finally
  • try + except + else + finally
  • try + finally

 

 

assertion

assert는 뒤의 조건이 True가 아니면 AssertError를 발생시킨다

 

 

왜 assert가 필요한 것일까?

어떤 함수는 성능을 높이기 위해 반드시 정수만을 입력받아 처리하도록 만들 수 있다.

이런 함수를 만들기 위해서는 반드시 함수에 정수만 들어오는지 확인할 필요가 있다.

이를 위해 if문을 사용할 수도 있고 '예외 처리'를 사용할 수도 있지만 '가정 설정문'을 사용하는 방법도 있다.

 

https://wikidocs.net/21050

 

03_가정 설정문(assert)

assert는 뒤의 조건이 True가 아니면 AssertError를 발생한다. ``` >>> a = 3 >>> assert a == 2 #결과 Traceback (mos ...

wikidocs.net

 

 

while

중단되지 않고 원하는 값이 들어올 때까지 입력을 요구한다.

Assert 보다는 while 문을 쓰거나 while하고 try를 같이 쓰는게 프로그램이 길어질수록 프로그램을 중간에 끊지 않고 쭉 이어서 실행