python写游戏棋牌游戏_使用python实现简单五子棋游戏

使用python实现简单五子棋游戏

发布时间:2020-08-29 06:12:30

来源:脚本之家

阅读:73

作者:weixin_42874933

用python实现五子棋简单人机模式的练习过程,供大家参考,具体内容如下

第一次写博客,我尽力把它写好。

最近在初学python,今天就用自己的一些粗浅理解,来记录一下这几天的python简单人机五子棋游戏的练习,下面是实现过程的理解(是在cmd中运行的):

主要流程: *重点内容*

- 首先是模块及类的划分

- 棋子类和棋盘类的方法

- 对策略类里的功能进行细分,调用棋子类和棋盘类

- 写出判断输赢的方法

- 用main函数进行整个游戏进度的控制

模块及类的划分

类的划分涉及到了面向对象的内容,根据五子棋游戏的设定,人和机器依次在一个棋盘里下棋,一方五子连线为赢,初步分为棋子类、棋盘类和策略类,每个类单独放一个模块,加上main模块一共四个模块。

棋子类包含棋子的坐标和棋子颜色(阵营),及相关get、set方法

棋盘类包含了棋盘的大小和棋盘的状态 ,及相关get、set方法

棋盘类的功能:接收要放入的棋子,清空棋盘,打印(显示)棋盘,给出对应位置的状态

策略类:一个策略类对应一个棋盘类,在构造器里导入一个棋盘类

策略类的功能:人把棋子放入棋盘、机器把棋子放入棋盘、判断棋局的输赢

棋子类和棋盘类

棋子类比较简单,在棋子的角度,只要接收位置和颜色(阵营),传出位置和颜色(阵营)即可,其中位置用元组打包传递

class Chessman(object):

#初始化

def __init__(self):

pass

def set_pos(self,pos):

self.pos = pos

def get_pos(self):

return self.pos

def set_color(self,color):

self.color = color

def get_color(self):

return self.color

棋盘类需要用到棋子类,在这之前,先要进行棋盘的设定

在这里棋盘是用列表来构建,分为两层,实现x,y的位置,棋盘大小设为类属性

#类属性

board_size =15

#初始化棋盘

def __init__(self):

self.__board = [[0 for i in range(0,Chessboard.board_size+1)] for j in range(0,Chessboard.board_size+1)]

清空棋盘类似

#清空棋盘,‘+'为棋盘的样子

def init_board(self):

#忽略第0行

for i in range(1,Chessboard.board_size+1):

for j in range(1,Chessboard.board_size+1):

self.__board[i][j] = '+'

打印也差不多,注意在坐标轴旁放上序列号,这里纵坐标为1-15,横坐标为a-o

# 打印棋盘

def print_board(self):

#打印列号

print(' ', end='')

for i in range(1,Chessboard.bo

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值