亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

python制作簡(jiǎn)單五子棋游戲

 更新時(shí)間:2019年06月18日 11:37:45   作者:Eric· Charles  
這篇文章主要為大家詳細(xì)介紹了python制作簡(jiǎn)單五子棋游戲,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了python五子棋游戲的具體代碼,供大家參考,具體內(nèi)容如下

#五子棋
‘''
矩陣做棋盤 16*16 “+”

打印棋盤 for for

游戲是否結(jié)束

開始下棋 while 游戲是否結(jié)束:
黑白交替 player=0 p%2==0 ==1 p+=1
下棋動(dòng)作一樣 但是棋子不一樣
‘''

代碼

#創(chuàng)建棋盤的程序
def initBoard():
 global board #調(diào)用全局的board
 board=[None]*16
 for i in range(len(board)):
 board[i]=["+ "]*16
#打印棋盤的程序
def printBoard():
 global board
 for i in range(len(board)):
 for j in range(len(board[i])):
  print(board[i][j],end=" ")
 print("")
#開始下棋的程序
def startGame():
 global board
 player=0
 while isGameContinue():
 if player%2==0:
  #黑方下棋
  print("==>黑方下棋")
  if not playChess("●"):
  continue
 else:
  #白方下棋
  print("==>白方下棋")
  if not playChess("○"):
  continue
 player+=1

def playChess(chess):
 #獲取位置
 x=int(input("==> X="))-1
 y=int(input("==> Y="))-1
 if board[x][y]=="+ ":
 board[x][y]=chess
 printBoard()
 return True #落子成功
 else:
 print("==> 已有棋子 請(qǐng)重新落子\a")
 printBoard()
 return False#落子失敗
def isGameContinue():
 for i in range(len(board)):
 for j in range(len(board[i])):
  if board[i][j]!="+ ":
  #橫向
  if j<=11:
   if board[i][j]==board[i][j+1]==board[i][j+2]==board[i][j+3]==board[i][j+4]:
   whoWin(i,j)
   return False
  #豎向
  if i<=11:
   if board[i][j]==board[i+1][j]==board[i+2][j]==board[i+3][j]==board[i+4][j]:
   whoWin(i,j)
   return False
  #反斜
  if i<=11 and j<=11:
   if board[i][j]==board[i+1][j+1]==board[i+2][j+2]==board[i+3][j+3]==board[i+4][j+4]:
   whoWin(i,j)
   return False
  #正斜
  if i>=4 and j<=11:
   if board[i][j]==board[i-1][j+1]==board[i-2][j+2]==board[i-3][j+3]==board[i-4][j+4]:
   whoWin(i,j)
   return False
 return True
def whoWin(i,j):
 if board[i][j]=="●":
 print("黑方勝!")
 else:
 print("白方勝!")
 for i in range(10):
 print("\a")
board=[] 
initBoard()
printBoard()
startGame()

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 使用python serial 獲取所有的串口名稱的實(shí)例

    使用python serial 獲取所有的串口名稱的實(shí)例

    今天小編就為大家分享一篇使用python serial 獲取所有的串口名稱的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-07-07
  • python替換文件中的某幾行操作技巧

    python替換文件中的某幾行操作技巧

    這篇文章主要介紹了python替換文件中的某幾行,本文介紹使用python正則庫(kù)打開文件并替換文件中某幾行數(shù)據(jù)的可行方法,需要的朋友可以參考下
    2023-09-09
  • python模塊中pip命令的基本使用

    python模塊中pip命令的基本使用

    這篇文章主要為大家介紹了python機(jī)器學(xué)習(xí)python實(shí)現(xiàn)神經(jīng)網(wǎng)絡(luò)的示例解析,在同樣在進(jìn)行python機(jī)器學(xué)習(xí)的同學(xué)可以借鑒參考下,希望能夠有所幫助
    2021-10-10
  • Ubuntu下使用Python實(shí)現(xiàn)游戲制作中的切分圖片功能

    Ubuntu下使用Python實(shí)現(xiàn)游戲制作中的切分圖片功能

    這篇文章主要介紹了Ubuntu下使用Python實(shí)現(xiàn)游戲制作中的切分圖片功能,涉及Python針對(duì)圖片的讀取、載入、切分運(yùn)算等相關(guān)操作技巧,需要的朋友可以參考下
    2018-03-03
  • Python探索之實(shí)現(xiàn)一個(gè)簡(jiǎn)單的HTTP服務(wù)器

    Python探索之實(shí)現(xiàn)一個(gè)簡(jiǎn)單的HTTP服務(wù)器

    這篇文章主要介紹了Python探索之實(shí)現(xiàn)一個(gè)簡(jiǎn)單的HTTP服務(wù)器,具有一定參考價(jià)值,需要的朋友可以了解下。
    2017-10-10
  • Pycharm運(yùn)行程序時(shí),控制臺(tái)輸出PyDev?console:starting問(wèn)題

    Pycharm運(yùn)行程序時(shí),控制臺(tái)輸出PyDev?console:starting問(wèn)題

    Pycharm運(yùn)行程序時(shí),控制臺(tái)輸出PyDev?console:starting問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • new_zeros() pytorch版本的轉(zhuǎn)換方式

    new_zeros() pytorch版本的轉(zhuǎn)換方式

    今天小編就為大家分享一篇new_zeros() pytorch版本的轉(zhuǎn)換方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-02-02
  • Python去除列表中重復(fù)元素的方法

    Python去除列表中重復(fù)元素的方法

    這篇文章主要介紹了Python去除列表中重復(fù)元素的方法,實(shí)例分析了Python中去除列表重復(fù)元素的使用技巧,需要的朋友可以參考下
    2015-03-03
  • Python讀寫配置文件的方法

    Python讀寫配置文件的方法

    這篇文章主要介紹了Python讀寫配置文件的方法,涉及ConfigParser模塊的操作技巧,需要的朋友可以參考下
    2015-06-06
  • Python內(nèi)置函數(shù)map()的具體使用

    Python內(nèi)置函數(shù)map()的具體使用

    Python中的map()函數(shù)是一個(gè)高效的內(nèi)置函數(shù),用于將指定函數(shù)應(yīng)用于序列的每個(gè)元素,通過(guò)接收一個(gè)函數(shù)和一個(gè)或多個(gè)序列,本文就來(lái)詳細(xì)的介紹一下如何使用,感興趣的可以了解一下
    2024-09-09

最新評(píng)論