python3 turtle 画国际象棋棋盘

#!/usr/bin/env python
# -*- coding:utf-8 -*-
# Author:Hiuhung Wan

import turtle

n = 60  # 每行间隔
x = -300   #  x初始值
y = -300   #  x初始值

turtle.speed(11)
turtle.pensize(2)
# 先画8*8的正方形,并按要求涂黑
for i in range(8):
    for j in range(1, 9):
        turtle.penup()
        turtle.goto(x + i * n, y + j * n )
        turtle.pendown()
        if (i + j) % 2 == 1:   #不涂黑
            for index in range(4):
                turtle.forward(n)
                turtle.left(90)
        elif (i + j) % 2 == 0:  #涂黑
            turtle.begin_fill()
            turtle.fillcolor(‘black‘)
            for index in range(4):
                turtle.forward(n)
                turtle.left(90)
            turtle.end_fill()
        turtle.penup()

# 再画外面两个正方形
x1 = x - n * 0.12
y1 = y - n * 0.12 + n
turtle.goto(x1, y1)
turtle.pendown()
turtle.pensize(4)
for index in range(4):
    turtle.forward(n * 8 + 2 * n * 0.12)
    turtle.left(90)
turtle.penup()
# -----------------------------------------------

x2 = x - n * 0.3
y2 = y - n * 0.3 + n
turtle.goto(x2, y2)
turtle.pendown()
turtle.pensize(10)
for index in range(4):
    turtle.forward(n * 8 + 2 * n * 0.3)
    turtle.left(90)

turtle.hideturtle()
turtle.done()

  效果图如下:

原文地址:https://www.cnblogs.com/hiuhungwan/p/9231685.html

时间: 2024-11-06 03:42:47

python3 turtle 画国际象棋棋盘的相关文章

python用turtle画国际象棋棋盘

python学习的练习 用turtle画的国际象棋棋盘 import turtle turtle.speed(10) a = 30 #画背景 turtle.up() turtle.goto( -10, -10) turtle.down() turtle.fillcolor("Khaki") turtle.begin_fill() turtle.fd( a * 8 + 20) turtle.left(90) turtle.fd( a * 8 + 20) turtle.left(90) t

用turtle画中国象棋棋盘

刚刚学习了<Python入门教程(一)--Python语言基础视频课程>(http://edu.51cto.com/course/12194.html) 中间有道作业就是用turtle画中国象棋棋盘,试了半天,终于画出来了,不知道是不是这么画的,所以贴上来,求指点,求更好的方法! #画中国象棋棋盘 import turtle import math turtle.speed(10)#绘图速度 a = 30 #每个格子的宽度 #绘制底板并上色 turtle.up() turtle.goto( -

javascript简单写出国际象棋棋盘

关于昨天的一个作业,做了一个国际象棋的棋盘,效果图如下 这里的思路是根据off=true的值进行反转来判断单元格的颜色. 就那第一行来说,当条件语句if的off=true则输出str+='<td class="td01"></td>';,然后off=!off进行反转,得到off=false.在下一次循环条件语句if的off=false,则输出str+='<td class="td02"></td>';,然后off=!o

GUI(国际象棋棋盘)

package com.niit.javagui; import java.awt.BorderLayout; import java.awt.Color; import java.awt.GridBagConstraints; import java.awt.GridLayout; import java.awt.Label; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; im

Linux Shell编程基础---国际象棋棋盘

这两天在学习一些shell编程的知识,在做到一道国际象棋的题目时,觉得有些意思,就将它写成博客. 先来看看国际象棋棋盘长啥样: 仔细想了会棋盘的分布规则,这个问题肯定有很多思路,我自己想到的是规则是1.将棋盘行数作为一个大循环,循环8次,每次循环根据行号的奇偶来确定格子颜色的次序:2.在单个行中,循环8次并判断列的奇偶数来确定打印颜色以上思路能够打印出最简单的棋盘,但是shell中一个空格的显示形状并非正方形,而且是空格的高度大于宽度.因此需要在单个棋盘的行的打印循环外在加一层控制打印空格行数的

linux国际象棋 棋盘脚本.md(含脚本注释,查看更直观)

linux国际象棋 棋盘脚本.md(含脚本注释,查看更直观) 最终效果: 题目:编写脚本,实现打印国际象棋棋盘 路径:(仅作者) PDF:D:\Download_SD-Date and Bak(D盘 下载)\学习资料\pdf文件\基础知识\15SHELL脚本编程进阶.pdf ? 15SHELL脚本编程进阶.pdf ? 5.编写脚本,实现打印国际象棋棋盘 视频:(仅作者)17.18天 ? 逻辑:(详见代码注释) 1.循环[for done] 深浅 格子. 2.简化 嵌套 第二层 循环[for do

*【Python】【demo实验31】【练习实例】【使用turtle画小猪佩奇】

如下图小猪佩奇: 要求使用turtle画小猪佩奇: 源码: # encoding=utf-8 # -*- coding: UTF-8 -*- # 使用turtle画小猪佩奇 from turtle import* def nose(x,y):#鼻子 penup()#提起笔 goto(x,y)#定位 pendown()#落笔,开始画 setheading(-30)#将乌龟的方向设置为to_angle/为数字(0-东.90-北.180-西.270-南) begin_fill()#准备开始填充图形 a

Python算法题(二)——国际象棋棋盘(排列组合问题,最小的K个数)

题目一(输出国际象棋棋盘)  分析: 用i控制行,j来控制列,根据i+j的和的变化来控制输出黑方格,还是白方格.   主要代码: for i in range(8): for j in range(8): if (i+j)%2!=0: print(chr(219)*2,end='') else: print(' ',end='') print('') 题目二(排列组合问题)   有1.2.3.4个数字,能组成多少个互不相同且无重复数字的四位数?都是多少?   分析:  我们可以先预测一下,共有2

Python之turtle画同心圆和棋盘

画饼图 import turtle t = turtle.Pen() for i in range(5): t.penup() t.goto(0, -i*30) t.pendown() t.circle(i*30+30) turtle.done() 画棋盘 import turtle t = turtle.Pen() widthall = 200 width = 20 num = widthall // 20 * 2 + 1 t.speed(10) for r in range(num): t.