最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

【Lad】《王者榮耀》莊周開局反野教學(xué)視頻(咬人魚在此)

2023-06-15 13:25 作者:Lad-Liang  | 我要投稿

#全局常量

best_weizhi= (4, 0, 2, 6, 8, 1, 3, 5, 7)

win = ((0, 1, 2),?(3, 4, 5), (6, 7, 8),?(0, 3, 6),(1, 4, 7),?(2, 5, 8), (0, 4, 8),?(2, 4, 6))?

X = "X"

O = "O"

EMPTY = " "

#定義函數(shù)產(chǎn)生一個(gè)新的棋盤

def new_board():

??board = []

??for square in range(9):

????board.append(EMPTY)

??return board

#詢問(wèn)該誰(shuí)下棋

def ask_yes_no(question):

??response = None

??#如果輸入不是"y", "n",繼續(xù)重新輸入

??while response not in ("y", "n"):

??????response = input(question).lower()

??return response

#詢問(wèn)誰(shuí)先走,先走方為X,后走方為O

#函數(shù)返回電腦方、玩家的角色代號(hào)

def pieces():

??go_first = ask_yes_no("玩家你是否先走 (y/n): ")

??if go_first == "y":

????print("\n玩家你先走.")

????human = X

????computer = O

??else:

????print("\n電腦先走.")

????computer = X

????human = O

??return computer, human

#顯示棋盤

def display_board(board):

??board2=board[:]???#創(chuàng)建副本,修改不影響原來(lái)列表board

??for i in range(len(board)):

????if board[i]==EMPTY:

??????board2[i]=i

??print("\t", board2[0], "|", board2[1], "|", board2[2])

??print("\t", "---------")

??print("\t", board2[3], "|", board2[4], "|", board2[5])

??print("\t", "---------")

??print("\t", board2[6], "|", board2[7], "|", board2[8], "\n")

#輸入你想下的位置數(shù)字

def ask_number(question, low, high):

??response = None

??while response not in range(low, high):

????response = int(input(question))

??return response

#產(chǎn)生可以合法走棋位置序列(也就是還未下過(guò)子位置)

def legal_moves(board):

??moves = []

??for i in range(9):

????if board[i] == EMPTY:

??????moves.append(i)

??return moves

#判斷輸贏

def winner(board):

??for row in win:

????if board[row[0]] == board[row[1]] == board[row[2]] != EMPTY:

??????winner = board[row[0]]

??????return winner????#返回贏方

??#棋盤沒有空位置

??if EMPTY not in board:

????return "True" #"平局和棋,游戲結(jié)束"

??return False

#人走棋

def human_move(board, human):

??legal = legal_moves(board)

??move = None

??while move not in legal:

????move = ask_number("你走那個(gè)位置? (0 - 9):", 0, 9)

????if move not in legal:

??????print("\n此位置已經(jīng)落過(guò)子了")

??return move

#電腦走棋

def computer_move(board, computer, human):

??# make a copy to work with since function will be changing list

??board = board[:]???#創(chuàng)建副本,修改不影響原來(lái)列表board

??#按優(yōu)劣順序排序的下棋位置best_weizhi

??# 如果電腦能贏,就走那個(gè)位置

??for move in legal_moves(board):

????board[move] = computer

????if winner(board) == computer:

??????print("電腦下棋位置是" ,move)

??????return move

????# 取消走棋方案

????board[move] = EMPTY

??# 如果玩家能贏,就堵住那個(gè)位置

??for move in legal_moves(board):

????board[move] = human

????if winner(board) == human:

??????print("電腦下棋位置是" ,move)

??????return move

????#取消走棋方案

????board[move] = EMPTY

??#不是上面情況則,也就是這一輪時(shí)都贏不了則

??#從最佳下棋位置表中挑出第一個(gè)合法位置

??for move in best_weizhi:

????if move in legal_moves(board):

??????print("電腦下棋位置是" ,move)

??????return move

#轉(zhuǎn)換角色

def next_turn(turn):

??if turn == X:

????return O

??else:

????return X

#主方法:

def main():

??computer, human = pieces()

??turn = X

??board = new_board()

??display_board(board)

???

??while not winner(board):

????if turn == human:

??????move = human_move(board, human)

??????board[move] = human

????else:

??????move = computer_move(board, computer, human)

??????board[move] = computer

????display_board(board)

????turn = next_turn(turn)

????the_winner = winner(board)

??#游戲結(jié)束輸出輸贏信息

??if the_winner == computer:

????print("電腦贏!\n")???

??elif the_winner == human:?????

????print("玩家贏!\n")

??elif the_winner == "True": #"平局"?????

????print("平局,和棋,游戲結(jié)束\n")

?

# start the program

main()

input("按任意鍵退出游戲.")


【Lad】《王者榮耀》莊周開局反野教學(xué)視頻(咬人魚在此)的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
桃园市| 宜川县| 罗平县| 洞头县| 赣榆县| 连云港市| 东丰县| 横山县| 即墨市| 武平县| 香港| 永修县| 上虞市| 九寨沟县| 罗江县| 安仁县| 荣成市| 新兴县| 合水县| 襄城县| 万州区| 德钦县| 遂溪县| 那坡县| 临高县| 大城县| 黑水县| 越西县| 浦东新区| 樟树市| 刚察县| 磐安县| 金昌市| 汝州市| 淮南市| 牟定县| 普兰店市| 珲春市| 贞丰县| 汪清县| 元氏县|