五子棋源码,原创代码,仅供 python 开源项目学习。
目前电脑走法笨笨的,下一期版本会提高电脑算法
ps:另外很多人在学习Python的过程中,往往因为遇问题解决不了或者没好的教程从而导致自己放弃,为此我建了个Python全栈开发交流.裙 :一久武其而而流一思(数字的谐音)转换下可以找到了,里面有最新Python教程项目可拿,不懂的问题有老司机解决哦,一起相互监督共同进步
第二版已发布与另外一篇博文,有兴趣的可以去查看下载。
import pygame
import time
SCREEN_WIDTH=900
SCREEN_HEIGHT=800 BG_COLOR=pygame.Color(200, 200, 200) Line_COLOR=pygame.Color(255, 255, 200) TEXT_COLOR=pygame.Color(255, 0, 0) # 定义颜色 BLACK = ( 0, 0, 0) WHITE = (255, 255, 255) RED = (255, 0, 0) GREEN = ( 0, 255, 0) BLUE = ( 0, 0, 255) class MainGame(): window = None Start_X = 50 Start_Y = 50 Line_Span = 40 Max_X = Start_X + 18 * Line_Span Max_Y = Start_Y + 18 * Line_Span player1Color = 'B' player2Color = 'W' overColor = 'S' # 1代表玩家1 , 2代表到玩家2 0代表结束 Putdownflag = player1Color ChessmanList = [] def __init__(self): '''初始化''' def startGame(self): MainGame.window = pygame.display.set_mode([SCREEN_WIDTH, SCREEN_HEIGHT]) pygame.display.set_caption("五子棋") #初始化 while True: time.sleep(0.1) #获取事件 MainGame.window.fill(BG_COLOR) self.drawchChessboard() self.bitechessman() self.VictoryOrDefeat() self.Computerplay() self.getEvent() pygame.display.update() pygame.display.flip() def drawchChessboard(self): for i in range(0,19): x = MainGame.Start_X + i * MainGame.Line_Span y = MainGame.Start_Y + i * MainGame.Line_Span pygame.draw.line(MainGame.window, BLACK, [x, MainGame.Start_Y], [x, MainGame.Max_Y], 1) pygame.draw.line(MainGame.window, BLACK, [MainGame.Start_X, y], [MainGame.Max_X, y], 1) def getEvent(self): # 获取所有的事件 eventList = pygame.event.get() for event in eventList: if event.type == pygame