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()

使用turtle库画国际象棋棋盘  

相关文章:

  • 2021-11-22
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-08-09
猜你喜欢
  • 2022-12-23
  • 2021-10-27
  • 2022-12-23
  • 2022-12-23
  • 2021-07-26
  • 2021-10-16
  • 2022-12-23
相关资源
相似解决方案