Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

Turtle Programming ใน Python (วาดรูปด้วยเต่า)

Turtle เป็นฟีเจอร์พิเศษของ Python ใช้วาดกราฟิกง่ายๆ บน "กระดาษวาด" (drawing board) เหมาะสำหรับเรียนรู้ programming และ geometry

เริ่มต้นใช้งาน


import turtle

my_window = turtle.Screen()
my_window.bgcolor("blue")
my_pen = turtle.Turtle()
my_pen.forward(150)
my_pen.left(90)
my_pen.forward(75)
my_pen.color("white")
my_pen.pensize(12)

เมธอดสำคัญของ Turtle

เมธอดพารามิเตอร์คำอธิบาย
Turtle()Noneสร้าง turtle object ใหม่
forward(distance)amountเดินหน้าตามระยะทาง
backward(distance)amountถอยหลังตามระยะทาง
right(angle)angleหมุนขวา (clockwise) องศา
left(angle)angleหมุนซ้าย (counter-clockwise) องศา
penup() / up()Noneยกปากกาขึ้น (ไม่วาด)
pendown() / down()Noneวางปากกาลง (วาด)
color(color)color nameเปลี่ยนสีปากกา
fillcolor(color)color nameสีสำหรับ fill รูปหลายเหลี่ยม
begin_fill()Noneเริ่มจดจุดเพื่อ fill
end_fill()Noneปิดรูปและ fill สี
goto(x, y)x, yย้ายไปพิกัด (x,y)
position()Noneคืนพิกัดปัจจุบัน
heading()Noneคืนทิศทางปัจจุบัน
circle(radius)radiusวาดวงกลม
dot(size)Noneวาดจุดที่ตำแหน่งปัจจุบัน
stamp()Noneตราประทับรูปเต่าที่ตำแหน่งปัจจุบัน
shape(name)shapename'arrow', 'classic', 'turtle', 'circle'
speed(speed)0-10ความเร็วการวาด (0=เร็วที่สุด)
done() / exitonclick()Noneจบการวาด / รอคลิกเพื่อปิด

ตัวอย่าง: วาดสี่เหลี่ยมจัตุรัส


import turtle
my_pen = turtle.Turtle()
for i in range(4):
    my_pen.forward(50)
    my_pen.right(90)
turtle.done()

Turtle Programming ใน Python (วาดรูปด้วยเต่า)

ตัวอย่าง: วาดดาว


import turtle
my_pen = turtle.Turtle()
for i in range(5):
    my_pen.forward(50)
    my_pen.right(144)
turtle.done()

Turtle Programming ใน Python (วาดรูปด้วยเต่า)

ตัวอย่าง: วาดหกเหลี่ยม


import turtle
polygon = turtle.Turtle()
num_sides = 6
side_length = 70
angle = 360.0 / num_sides
for i in range(num_sides):
    polygon.forward(side_length)
    polygon.right(angle)
turtle.done()

Turtle Programming ใน Python (วาดรูปด้วยเต่า)

ตัวอย่าง: สี่เหลี่ยมซ้อนกัน


import turtle
my_wn = turtle.Screen()
my_wn.bgcolor("light blue")
my_wn.title("Turtle")
my_pen = turtle.Turtle()
my_pen.color("black")

def sqrfunc(size):
    for i in range(4):
        my_pen.fd(size)
        my_pen.left(90)
    size = size - 5

sqrfunc(146)
sqrfunc(126)
sqrfunc(106)
sqrfunc(86)
sqrfunc(66)
sqrfunc(46)
sqrfunc(26)

Turtle Programming ใน Python (วาดรูปด้วยเต่า)

ตัวอย่าง: รูปแบบวงกลมสวยงาม


import turtle
turtle.speed(0)
for i in range(30):
    turtle.circle(5*i)
    turtle.circle(-5*i)
    turtle.left(i)
turtle.exitonclick()

Turtle Programming ใน Python (วาดรูปด้วยเต่า)

ตัวอย่าง: สปิรัลสีสัน


import turtle
colors = ["red", "purple", "blue", "green", "orange", "yellow"]
my_pen = turtle.Pen()
turtle.bgcolor("black")
for x in range(360):
    my_pen.pencolor(colors[x % 6])
    my_pen.width(x/100 + 1)
    my_pen.forward(x)
    my_pen.left(59)

Turtle Programming ใน Python (วาดรูปด้วยเต่า)

สรุป: Turtle เหมาะสำหรับการเรียนรู้ programming logic, geometry, และสร้างศิลปะ generative art อย่างสนุกสนาน