import turtle n = 60 # 每行间隔,小格子边长 x = -300 # x初始值 y = -300 # x初始值 def main(): turtle.speed(11) turtle.pensize(2) turtle.penup() # 先画8*8的正方形,并按要求涂黑 for i in range(8): for j in range(8): turtle.goto(x + i * n, y + j * n) if (i + j) % 2 == 0: # 白格子 draw_square(n, "white") elif (i + j) % 2 == 1: # 黑格子 draw_square(n, "black") # 再画外面两个正方形 x1 = x - n * 0.12 y1 = y - n * 0.12 n1 = n * 8 + 2 * n * 0.12 turtle.goto(x1, y1) turtle.pensize(4) draw_square_2(n1) # ----------------------------------------------- x2 = x - n * 0.3 y2 = y - n * 0.3 n2 = n * 8 + 2 * n * 0.3 turtle.goto(x2, y2) turtle.pensize(10) draw_square_2(n2) turtle.hideturtle() turtle.done() def draw_square(length:float, fill_color:str): """ 画正方形并填充 :param length: 边长 :param fill_color: 填充颜色 :return: 无 """ turtle.pendown() turtle.begin_fill() turtle.fillcolor(fill_color) for index in range(4): turtle.forward(length) turtle.left(90) turtle.end_fill() turtle.penup() def draw_square_2(length:float): """ 画正方形,不填充 :param length: 边长 :return: 无 """ turtle.pendown() for index in range(4): turtle.forward(length) turtle.left(90) turtle.penup() if __name__ == '__main__': main()