Python 利用Turtle模块绘制国际象棋棋盘

使用Turtle模块绘制国际象棋棋盘

使用语言:Python 3.7.3

思路:
国际象棋是8×8的一个个小正方形,或者说是9横9纵的线组成。作画的时候,先做9横9纵的线,再填上灰色的小正方形,即可完成

本次画的棋盘边长为160×160.
在这里插入图片描述
1、import turtle

import turtle

2、画9横9纵的线

for num in range(-80, 100, 20):   # 画9根横线
    turtle.up()
    turtle.goto(-80, num)
    turtle.down()
    turtle.forward(160)
turtle.right(90)
for num1 in range(-80, 100, 20):   # 画9根纵线
    turtle.up()
    turtle.goto(num1,80)
    turtle.down()
    turtle.forward(160)

在这里插入图片描述
9根横线
在这里插入图片描述
9根纵线
3、外框加粗

turtle.right(90)	# 上一步结束,海龟方向朝下,为了方便,先转一下
turtle.colormode(255)	# 颜色弄成RGB模式,选颜色方便
turtle.pencolor(0, 0, 0)	# 下边要画黑色的边框,不过本身就是黑色的....有点多余了
turtle.pensize(2)	# 画笔加倍。默认是1,现在变2
for num2 in range(4):	# 画大边框
    turtle.forward(160)
    turtle.right(90)
turtle.pensize(1)	# 恢复画笔宽度
turtle.goto(-80, -80)	# 去到最左下角的点,好继续下一步

在这里插入图片描述
外框加粗
4、最后,填色
只要捋请规律了就没啥问题。

以下的小正方形填色,就是我们需要循环的。

        turtle.up()	
        turtle.goto(x, y)
        turtle.down()
        turtle.begin_fill()
        turtle.fillcolor('grey')
        for b in range(4):
            turtle.right(90)
            turtle.forward(20)
        turtle.end_fill()

按照上边的小正方形填色,然后找到每一个点,画笔抬起,落下,如此循环即可

for x in range(-80,80,40):
    for y in range(-80,80,40):
        turtle.up()
        turtle.goto(x, y)
        turtle.down()
        turtle.begin_fill()
        turtle.fillcolor('grey')
        for b in range(4):
            turtle.right(90)
            turtle.forward(20)
        turtle.end_fill()
turtle.up()
turtle.goto(80, 80)
turtle.down()
for x1 in range(-60,80,40):
    for y1 in range(-60,80,40):
        turtle.up()
        turtle.goto(x1, y1)
        turtle.down()
        turtle.begin_fill()
        turtle.fillcolor('grey')
        for b in range(4):
            turtle.right(90)
            turtle.forward(20)
        turtle.end_fill()

5,收尾
隐藏箭头;
为了窗口在画完的时候不关。

turtle.hideturtle()	# 隐藏箭头
turtle.done()	# 保持窗口,不关闭

最终效果
最终效果

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值