python 象棋 ai 入门教程-用turtle画中国象棋棋盘
刚刚学习了《Python入门教程(一)——Python语言基础视频课程》(http://edu.51cto.com/course/12194.html)
中间有道作业就是用turtle画中国象棋棋盘,试了半天,终于画出来了,
不知道是不是这么画的,
所以贴上来,求指点,求更好的方法!
#画中国象棋棋盘
import turtle
import math
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 * 9 + 20)
turtle.left(90)
turtle.fd( a * 8 + 20)
turtle.left(90)
turtle.fd( a * 9 + 20)
turtle.left(90)
turtle.end_fill()
#画笔回位
turtle.up()
turtle.goto(0,0)
turtle.down()
#画横线
for i in range(10):
turtle.fd( a * 8 )
turtle.up()
turtle.bk( a * 8)
turtle.left( 90 )
turtle.fd( a )
turtle.right( 90 )
turtle.down()
turtle.up()
turtle.goto( 0, 0)
turtle.down()
#画竖线
turtle.left(90)
for i in range(9):
if i == 0 or i == 8:
turtle.fd( a * 9 )
turtle.up()
turtle.bk( a * 9 )
turtle.right(90)
turtle.fd(a)
turtle.left(90)
turtle.down()
else:
turtle.fd( a * 4 )
turtle.up()
turtle.fd(a)
turtle.down()
turtle.fd( a * 4)
turtle.up()
turtle.bk( a * 9)
turtle.right(90)
turtle.fd(a)
turtle.left(90)
turtle.down()
# 画米字格
turtle.up()
turtle.goto( a * 4, a)
turtle.down()
turtle.right(45)
for i in range(4):
turtle.fd(math.sqrt( a * a * 2))
turtle.bk(math.sqrt( a * a * 2))
turtle.right(90)
turtle.up()
turtle.goto(a*4,a*8)
turtle.down()
for i in range(4):
turtle.fd(math.sqrt( a * a * 2))
turtle.bk(math.sqrt( a * a * 2))
turtle.right(90)
turtle.done()
运行结果
python 象棋 ai 入门教程-用turtle画中国象棋棋盘相关推荐
- 用turtle画中国象棋棋盘
刚刚学习了<Python入门教程(一)--Python语言基础视频课程>(http://edu.51cto.com/course/12194.html) 中间有道作业就是用turtle画中 ...
- python turtle画中国象棋_python使用turtle绘制国际象棋棋盘
本文实例为大家分享了python使用turtle画国际象棋棋盘的具体代码,供大家参考,具体内容如下 使用的方法是每一个小格每一个小格的画 import turtle for i in range(8) ...
- python 象棋 ai 入门教程-用Python编写一个国际象棋AI程序
最近我用Python做了一个国际象棋程序并把代码发布在Github上了.这个代码不到1000行,大概20%用来实现AI.在这篇文章中我会介绍这个AI如何工作,每一个部分做什么,它为什么能那样工作起来. ...
- python 象棋 ai 入门教程-用Python写一个中国象棋AI?
/************************************************************** = 民间六子棋(六子冲)人机博弈引擎实现与教程 =** www.leil ...
- python 象棋 ai 入门教程-Python学员作品-中国象棋之pygame篇
背景:为了更好的运用前三阶段学习的知识,再加上本身是个象棋迷,特以此出发点做了一个简单的小游戏 功能: 注册 登录 选桌 红黑方下棋对战 大厅聊天 对战聊天 切换棋盘背景 邮箱验证 技术实现: 客户端 ...
- Python 数据科学入门教程:机器学习:回归
Python 数据科学入门教程:机器学习:回归 原文:Regression - Intro and Data 译者:飞龙 协议:CC BY-NC-SA 4.0 引言和数据 欢迎阅读 Python 机器 ...
- 用python写脚本看什么书-终于知晓python编写脚本入门教程
PyQt5是基于Digia公司强大的图形程式框架Qt5的python接口,由一组python模块构成.PyQt5本身拥有超过620个类和6000函数及方法.在可以运行于多个平台.PyQt5拥有双重协议 ...
- python 科学计算基础教程电子版-终于领会python科学计算入门教程
PyQt5是基于Digia公司强大的图形程式框架Qt5的python接口,由一组python模块构成.PyQt5本身拥有超过620个类和6000函数及方法.在可以运行于多个平台.PyQt5拥有双重协议 ...
- python快速入门答案-总算懂得python脚本快速入门教程
PyQt5是基于Digia公司强大的图形程式框架Qt5的python接口,由一组python模块构成.PyQt5本身拥有超过620个类和6000函数及方法.在可以运行于多个平台.PyQt5拥有双重协议 ...
- python快速编程入门教程-终于懂得python快速编程入门教程
为了提高模块加载的速度,每个模块都会在__pycache__文件夹中放置该模块的预编译模块,命名为module.version.pyc,version是模块的预编译版本编码,一般都包含Python的版 ...
最新文章
- Matplotlib绘图库初探
- arcgis重心迁移分析_山东省植被覆盖度变化与气候因子相关性分析
- oracle锁表怎么解决,Oracle锁表问题的简捷处理技巧
- python导入xlrd库_python中xlrd库如何实现文件读取?
- jqgrid columnChooser列的自定义及存储和获取
- mysql复杂条件判断_MySQL复杂where条件分析
- linux service命令解析(重要)
- 计算机组成原理学习的一些感悟
- C语言经典题目(51-60)
- lisp 设计盘形齿轮铣刀_钨钢铣刀制造厂
- 51单片机外设篇:按键
- win xp系统安装在虚拟机里面无法连接网络,无本地连接问题解决
- python大鱼吃小鱼单机游戏下载_大鱼吃小鱼
- 基于J2EE的弹幕视频网站设计
- 【渝粤教育】电大中专电商运营实操 (4)作业 题库
- 使用CodeIgniter框架发送QQ邮件
- 计算机相关的文章,关于计算机的论文精选范文
- android中禁止输入表情符号,Android EdText编辑框禁止输入表情符号(使用正则表达式)...
- 99物联金手指模组AFW127PI
- SpringBoot——使用拦截器拦截未登录用户