如何用python制作五子棋
hi,大家好,今天就来将你如何用python制作五子棋
话不多说,直接上代码!
import pygameEMPTY = 0BLACK = 1WHITE = 2black_color = [0, 0, 0]white_color = [255, 255, 255]class RenjuBoard(object):def __init__(self):self._board = [[]] * 15self.reset()def reset(self):for row in range(len(self._board)):self._board[row] = [EMPTY] * 15def move(self, row, col, is_black):if self._board[row][col] == EMPTY:self._board[row][col] = BLACK if is_black else WHITEreturn Truereturn Falsedef draw(self, screen):for index in range(1, 16):pygame.draw.line(screen, black_color,[40, 40 * index], [600, 40 * index], 1)pygame.draw.line(screen, black_color,[40 * index, 40], [40 * index, 600], 1)pygame.draw.rect(screen, black_color, [36, 36, 568, 568], 4)pygame.draw.circle(screen, black_color, [320, 320], 5, 0)pygame.draw.circle(screen, black_color, [160, 160], 5, 0)pygame.draw.circle(screen, black_color, [480, 480], 5, 0)pygame.draw.circle(screen, black_color, [480, 160], 5, 0)pygame.draw.circle(screen, black_color, [160, 480], 5, 0)for row in range(len(self._board)):for col in range(len(self._board[row])):if self._board[row][col] != EMPTY:ccolor = black_color \if self._board[row][col] == BLACK else white_colorpos = [40 * (col + 1), 40 * (row + 1)]pygame.draw.circle(screen, ccolor, pos, 20, 0)def main():board = RenjuBoard()is_black = Truepygame.init()pygame.display.set_caption('五子棋')screen = pygame.display.set_mode([640, 640])screen.fill([255, 255, 0])board.draw(screen)pygame.display.flip()running = Truewhile running:for event in pygame.event.get():if event.type == pygame.QUIT:running = Falseelif event.type == pygame.KEYUP:passelif event.type == pygame.MOUSEBUTTONDOWN\and event.button == 1:x, y = event.posrow = round((y - 40) / 40)col = round((x - 40) / 40)if board.move(row, col, is_black):is_black = not is_blackscreen.fill([255, 255, 0])board.draw(screen)pygame.display.flip()pygame.quit()if __name__ == '__main__':main()
如何用python制作五子棋相关推荐
- 如何用python制作五子棋游戏_Python制作打地鼠小游戏
原文链接 Python制作小游戏(二十一)mp.weixin.qq.com 效果展示 打地鼠小游戏https://www.zhihu.com/video/1200492442610450432 简介 ...
- 如何用python制作动态二维码,提升表白成功率?
来源:凹凸数据 本文约1000字,建议阅读5分钟. 本文教你用python制作动态二维码,助你表白成功! 关注数据派THU(DatapiTHU)后台回复"20200520"获取完整 ...
- 怎么用python制作简单的程序-神级程序员教你如何用python制作一个牛逼的外挂!...
玩过电脑游戏的同学对于外挂肯定不陌生,但是你在用外挂的时候有没有想过如何做一个外挂呢?(当然用外挂不是那么道义哈,呵呵),那我们就来看一下如何用python来制作一个外挂.... 我打开了4399小游 ...
- 如何制作python检查小软件_如何用Python制作整蛊小程序
原标题:如何用Python制作整蛊小程序 下面的整蛊程序,千万不要发代码,否则就实现不了你整蛊的目的了.完成后一定要打包成一个exe程序,再发给朋友使用 . 1. 使用 pip install pyi ...
- 手把手教你如何用Python制作一个电子相册?末附python教程
这里简单介绍一下python制作电子相册的过程,主要用到tkinter和pillow这2个库,tkinter用于窗口显示照片,pillow用来处理照片,照片切换分为2种方式,一种是自动切换(每隔5秒) ...
- python可视化迷宫求解_如何用 Python 制作一个迷宫游戏
相信大家都玩过迷宫的游戏,对于简单的迷宫,我们可以一眼就看出通路,但是对于复杂的迷宫,可能要仔细寻找好久,甚至耗费数天,然后可能还要分别从入口和出口两头寻找才能找的到通路,甚至也可能找不到通路. 虽然 ...
- 教你如何用python制作平面直角坐标系模拟器 python项目小发明 【安安教具】-【数学】-【平面直角坐标系】模拟器
平面直角坐标系和之前的数轴模拟器有异曲同工之妙,但是作为一个二维的软件,肯定是要难一些的... [安安教具]-[数学]-[数轴]模拟器 教你如何用python制作数轴模拟器 python 小项目创作_ ...
- 如何用Python制作简单又好看的词云?来瞅瞅吧~
今天教大家如何用Python制作简单的词云,文中有非常详细的介绍及代码示例,对于正在学习Python的小伙伴们也能看的懂,需要的小伙伴可以参考下. 一.准备 词云制作所必需的三个包: 安装:pip i ...
- 教你如何用python制作三角形模拟器 python项目小发明 【安安教具】-【数学】-【三角形】模拟器
三角形的三个点互相连接组成了一个平面图形,我们如何用python制作一个可以展示各种三角形的软件呢? 我们先看看效果: 这个东西要如何使用呢?我们看一下视频: 三角形模拟器 可以看到,控制三角形的三个 ...
- python制作微信个人二维码_如何用Python制作微信好友个性签名词云图
前言 上次查看了微信好友的位置信息,想了想,还是不过瘾,于是就琢磨起了把微信好友的个性签名拿到,然后分词,接着分析词频,最后弄出词云图来. 1.环境说明 Win10 系统下 Python3,编译器是 ...
最新文章
- $.ajax上传文件或者上传图片
- python | 三种可变参数简述
- SpringBoot 对象输出
- Gradle task
- windows符号服务器地址
- WPF实现Android菜单动画
- 完美解决xhost +报错: unable to open display 装oracle的时候总是在弹出安装界面的时候出错...
- JDK6中synchronized优化之锁升级
- 十分钟学后端技术:怎么才能学好分布式系统和相关技术?
- 图像处理中的 亮度, 灰度, 对比度等概念
- JS生成浏览器唯一标识解决方案
- 动态站点:部署论坛系统Discuz!
- 中断 git merge 操做
- Lichee_RV学习系列--CoreMark-Pro移植
- jquery id选择器获取id值含有特殊字符的方法
- ITSM平台和CMDB集成的主要场景
- 最长对称子串(用各个字符确定对称轴进行判断)
- MySQL查询不以某个字符串为开头
- [POJ 2176] Folding
- Github testerSunshine/12306 Linux系统部署
热门文章
- 预测大盘最准确的指标_预测大盘最准确的指标-图讯阅读基地
- 微信公众号开发文档,微信小程序开发文档,微信扫码支付文档,微信委托代扣模式开发文档
- ARCore学习——软件准备及网站
- VMware卸载后再安装提示无法打开注册表项 UNKNOWN\Components\…解决办法
- 2021年起重机司机(限桥式起重机)考试题及起重机司机(限桥式起重机)报名考试
- 虚拟化技术和容器技术详解
- [实践篇]13.9 如何使用gcore(ramdump)排查内存黑洞?
- 苹果itunes软件怎么下载安装
- 51,AVR,PIC,MSP430,STM32单片机比较
- iis 域名无法访问