- Ball 클래스(터틀 그래픽)
from turtle import *
class Ball(Turtle):
def __init__(self, color, speed, size):
self.turtle = Turtle()
self.turtle.shape("circle")
self.x = 0
self.y = 0
self.color = color
self.turtle.color(color, color)
self.xspeed = speed
self.yspeed = speed
self.size = size
def move(self):
self.x += self.xspeed
self.y += self.yspeed
self.turtle.goto(self.x, self.y)
ball = Ball("red", 1, 2)
for i in range(100):
ball.move()
- CIrcle 클래스
class Circle():
def __init__(self, radius):
self.radius = radius
def calcPerimeter(self):
self.perimeter = 2 * self.radius * 3.141592
def calcArea(self):
self.area = self.radius * self.radius * 3.141592
def __str__(self):
msg = "반지름: "+str(self.radius)+" 원의 면적: "+str(self.area)+" 원의 둘레: "+str(self.perimeter)
return msg
circle = Circle(100)
circle.calcPerimeter()
circle.calcArea()
print(circle)
- TV 클래스
class TV():
def __init__(self):
self.channel = 10
self.volume = 5
self.on = True
def turnOn(self):
self.on = True
def turnOff(self):
self.on = False
def setChannel(self, channel):
self.channel = channel
def setVolume(self, volume):
self.volume = volume
def __str__(self):
return "TV의 채널: "+str(self.channel)+" TV의 음량: "+str(self.volume)
tv = TV()
print(tv)
tv.setChannel(11)
tv.setVolume(6)
print(tv)
- 2개의 거북이 객체 생성(터틀 그래픽)
from turtle import *
round = Turtle()
myTurtle = Turtle()
round.shape("circle")
myTurtle.shape("turtle")
def move(obj):
obj.fd(100)
obj.rt(90)
obj.fd(30)
obj.lt(90)
obj.fd(100)
round.lt(180)
move(round)
move(myTurtle)
- Turtle 상속 받아서 사각형 그리기(터틀 그래픽)
from turtle import *
class MyTurtle(Turtle):
def drawSquare(self):
for i in range(4):
self.rt(90)
self.fd(100)
my_turtle = MyTurtle()
my_turtle.fd(100)
my_turtle.drawSquare()
※ 두근두근 파이썬 13장 연습문제 참조
'AI > Python' 카테고리의 다른 글
[Python] 11-2장 매직 메소드(__str__()), self, 객체 안의 객체, 상속 (0) | 2023.04.11 |
---|---|
[Python] 11-1장 객체 - 생성, 사용, 초기화(__init__() 생성자) (0) | 2023.04.11 |
[Python] 10-3장 파일 입출력 응용(행맨, 파일 안의 문자열 삭제, 빈도수 세기 등) (0) | 2023.04.11 |
[Python] 10-2장 객체 출력(pickle, dump(), load()) (0) | 2023.04.10 |
[Python] 10-1장 파일 다루기(open, close, read, write), 파일 모드(r, w, a, r+) (0) | 2023.04.10 |