Unit 41. 코루틴 기존에는 메인 루틴에서 서브 루틴을 호출하면 서브 루틴 코드가 실행된 뒤, 다시 메인 루틴으로 돌아와 서브 루틴의 내용이 사라지는 형태였다면 코루틴은 메인 루틴과 서브 루틴과 서로 대등한 관계이며 메인 루틴에서 코루틴으로 최초 호출 후 메인 루틴 실행, 코루틴 코드 실행을 반복하게 된다. 코루틴객체.send(값)과 변수 = (yield) 형식으로 변수에 저장한다. 코루틴 바깥으로 값을 전달하기 위해서는 변수 = (yield 변수), next(코루틴객체), 코루틴객체.send(값) 으로 보내주게 된다. 코루틴객체.close() 메서드를 사용해서 강제로 종료하게 된다. 또, GeneratorExit 을 통해 예외처리를 할 수 있다. 코루틴 안에서 예외를 발생시키기 위해서는 코루틴객체...
Unit 21. 터틀 그래픽스 다음 사진처럼 turtle 모듈을 import해주고 shape로 창을 띄운다. Python Turtle Graphics로 forward, right 등을 통해 거북이를 이동시킬 수 있다. 해당 내용을 응용하여 다음처럼도 진행할 수 있다. speed를 가장 빠르게 하고, 원을 반복해서 그리는 것이다. import turtle as t n, line = map(int, input().split()) t.shape('turtle') t.speed('fastest') for i in range(n): t.forward(line) t.right((360 / n) * 2) t.forward(line) t.left(360 / n) Unit 22. 리스트와 튜플 리스트를 조작하는 메서드에..
Unit 11. 시퀀스 자료형 시퀀스 객체에는 요소가 여러 개 들어있는데, 이러한 요소의 길이(개수)를 구할 때는 len 함수를 사용한다. 시퀀스객체에는 시퀀스객체[인덱스]로 인덱스에 접근할 수 있다. 슬라이스는 a[0:4] 처럼 사용할 수 있는데, 4-1인 3까지 접근한다. a[2:8:3] 처럼 사용하게 되면, 2부터 3씩 증가하면서 2, 5에 접근한다. 시작인덱스:, :끝인덱스처럼 사용하면 생략하여 전부 출력할 수 있다. [::] 로 사용하면 리스트 전체를 가져온다. 슬라이스객체 = slice(시작인덱스, 끝인덱스, 인덱스증가폭) 처럼 사용할 수도 있다. 인덱스 증가폭을 지정하면 슬라이스 범위의 요소 개수와 할당 요소 개수가 정확히 일치해야 하고, 일치하지 않으면 에러를 출력한다. del 시퀀스객체[..
Unit 1. 소프트웨어 교육과 파이썬 C언어 코딩도장에 나온 내용과 거의 동일하다. 이러한 과정에서 파이썬은 네덜란드 귀도 반 로섬이 개발한 프로그래밍 언어로, 연구실 문이 닫혀 있어서 취미삼아 파이썬을 만들었다고 한다. (...?!) 참고로 파이썬 로고가 뱀 모양인 이유는 python 본 뜻이 비단뱀이라 그렇다고 한다. 파이썬의 특징은 쉽고 간단한 문법으로 배우기가 쉽고, 객체 지향 언어이며 다양한 패키지 및 오픈 소스라는 점이다. (그리고 구글링하면 정말 많은 자료가 나오는 언어 중 하나이다) Unit 2. 파이썬 설치하기 파이썬을 설치하는 과정이 나온다. 이미 컴퓨터에 파이썬이 설치되어 있기 때문에 간단하게 버전만 확인해보자. python 버전을 확인하는 방법으로는 두 가지 정도가 있는데, pyt..