Module turtle cung cấp đồ họa rùa (logo-style) đơn giản, phù hợp giáo dục, vẽ hình học, fractal.
Các phương thức chính
| Method | Tham số | Mô tả |
|---|---|---|
| forward(d) | distance | Tiến về trước |
| backward(d) | distance | Lùi lại |
| right(angle) | degrees | Quay phải (clockwise) |
| left(angle) | degrees | Quay trái (counter-clockwise) |
| penup() / up() | - | Nhấc bút (không vẽ) |
| pendown() / down() | - | Hạ bút (vẽ) |
| color(c) | color name | Màu bút |
| fillcolor(c) | color name | Màu fill |
| begin_fill() | - | Bắt đầu fill |
| end_fill() | - | Kết thúc fill |
| goto(x,y) | x, y | Di chuyển đến tọa độ |
| circle(r) | radius | Vẽ tròn |
| dot(size) | diameter | Vẽ chấm |
| stamp() | - | Dấu ấn hình rùa |
| shape(name) | 'arrow'/'turtle'/'circle' | Hình dạng con trỏ |
Ví dụ 1: Hình cơ bản
import turtle
wn = turtle.Screen()
wn.bgcolor("blue")
pen = turtle.Turtle()
pen.forward(150)
pen.left(90)
pen.forward(75)
pen.color("white")
pen.pensize(12)
turtle.done()
Ví dụ 2: Vẽ vuông
import turtle
pen = turtle.Turtle()
for _ in range(4):
pen.forward(50)
pen.right(90)
turtle.done()
Ví dụ 3: Vẽ sao 5 cánh
import turtle
pen = turtle.Turtle()
for _ in range(5):
pen.forward(100)
pen.right(144) # 180 - 360/5
turtle.done()
Ví dụ 4: Lục giác
import turtle
poly = turtle.Turtle()
n_sides, side_len = 6, 70
angle = 360 / n_sides
for _ in range(n_sides):
poly.forward(side_len)
poly.right(angle)
turtle.done()
Ví dụ 5: Vuông lồng nhau
import turtle
def draw_square(pen, size):
for _ in range(4):
pen.forward(size)
pen.left(90)
pen = turtle.Turtle()
for size in range(146, 20, -20):
draw_square(pen, size)
turtle.done()
Ví dụ 6: Hoa xoáy (spiral)
import turtle
turtle.speed(0)
for i in range(100):
turtle.circle(5*i)
turtle.circle(-5*i)
turtle.left(i)
turtle.exitonclick()
Ví dụ 7: Bút màu cầu vồng
import turtle
colors = ["red","purple","blue","green","orange","yellow"]
pen = turtle.Pen()
turtle.bgcolor("black")
for x in range(360):
pen.pencolor(colors[x % 6])
pen.width(x/100 + 1)
pen.forward(x)
pen.left(59)
turtle.done()