五子棋源碼,原創代碼,僅供 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.QUIT: self