天天看點

python剪刀石頭布_用Python程式設計玩轉剪刀石頭布

幾乎每個人的小時候都玩過剪刀石頭布的遊戲,那你又知不知道長大後對于剪刀石頭布有更進階的玩法,下面就是用Python程式設計來做一個關于剪刀石頭布的遊戲,你可以仔細想想再看看這個遊戲是怎麼做的。

python剪刀石頭布_用Python程式設計玩轉剪刀石頭布

設計一個"石頭、剪刀、布"遊戲,有時又叫"Rochambeau"。下面是遊戲規則,你和你的對手,在同一時間做出特定的手勢,必須是下面一種手勢:石頭、剪子、布。勝利者從下面的規則中産生,這個規則本身是個悖論。

(a) 布包石頭

(b)石頭砸剪刀

(c)剪刀剪破布

在你的計算機版本中,使用者輸入她或他的選項,計算機找一個随機選項,然後由你的程式來決定一個勝利者或者平手。注意:最好的算法是盡量少的使用 if 語句。

python剪刀石頭布_用Python程式設計玩轉剪刀石頭布

答案:

# -*- coding:UTF-8 -*-

import random

# def game():

menu = '\\

選擇以下指令出拳:\\n(s)石頭\\n(j)剪刀\\n(b)布\\n'

cmds = ['石頭','剪刀','布']

usrinput = raw_input(menu).strip()

cptinput = random.choice(cmds)

if usrinput == cmds[cmds.index(cptinput)-1]:

print '您赢了~\\n\\t電腦出的是:',cptinput,'\\n\\t您出的是:', usrinput

elif usrinput == cmds[cmds.index(cptinput)-2]:

print '您輸了~\\n\\t電腦出的是:',cptinput,'\\n\\t您出的是:', usrinput

else:

print '您和電腦打成平手,出的都是:',cptinput

# if __name__ == "__main__":

# game()