python编写剪刀石头布游戏_闲着也是闲着:PYTHON 编写剪刀石头布游戏
閑著也是閑著:PYTHON 編寫剪刀石頭布游戲
突如其來的一場變故,使得這個假期尤為的漫長,特別是不知什么時候終結的假期,尤其的漫長。閑著也是閑著,不如來學習學習Python吧。
我學習新的語言,不喜歡從基本開始學起,我喜歡從做好的項目或者游戲開始學起。
我在教學也是這樣,講基本理論知識容易讓人打瞌睡。不如從做好的項目里面加入基礎知識點更能讓人容易接受。
Python IDE我不是用Python自帶的,我使用更加專業的PyCharm,非常好用。有條件的朋友也可以使用。
本例程基本知識點為:隨機數、if...elif...else、input、列表和print等,
用戶輸入數值的代碼
# 輸入1,2,3 分別代表剪刀,石頭,布
# 電腦隨機出拳,也是以1,2,3分別代表剪刀,石頭,布
# 比較輸贏
首先將代碼注釋做好。我們一步一步來完成它!
首先,我們讓電腦提示我們輸入1,2,3,分別代表剪刀,石頭,布。
利用input即可: input("請輸入您要出的是 剪刀(1)/ 石頭(2) / 布(3)")
同時,我們將輸入的數值賦予player:
player=int(input("請輸入您要出的是 剪刀(1)/ 石頭(2) / 布(3)"))
我們先忽略電腦隨機出拳的代碼,給它一個固定的數值:computer=1
當用戶輸入一個數值之后,電腦要馬上打印出用戶輸入和電腦的出拳:print("玩家選擇的拳頭是 %d - 電腦出的拳是 %d" % (player,computer))
python的方便之處就在這里顯示出來,代碼盡可能的簡潔。
# 輸入1,2,3 分別代表剪刀,石頭,布
player=int(input("請輸入您要出的是 剪刀(1)/ 石頭(2) / 布(3)"))
# 電腦隨機出拳,也是以1,2,3分別代表剪刀,石頭,布
computer = 1
print("玩家選擇的拳頭是 %d - 電腦出的拳是 %d" % (player,computer))
# 比較輸贏
判斷勝負的代碼
比較勝負的代碼比較容易,主要是player,computer的對比,首先第一步需要寫出的是player 所有的獲勝條件:
if (player==1 and computer==3) or (player==2 and computer==1) or (player==3 and computer==2):
第二步,需要寫出平局的條件,因為平局的條件比較好寫,那么剩下的就是computer獲勝的條件:
elif player==computer:
判斷勝負的全部代碼如下:
# 比較輸贏
if ((player == 1 and computer == 3)
or (player == 2 and computer == 1)
or (player == 3 and computer == 2)):
print("主人獲勝了!")
elif player == computer:
print("主人和電腦平局了!")
else:
print("很遺憾,主人您落敗了!")
隨機數的應用
游戲的編寫,是少不了隨機數的應用的。在python中,要加入隨機數,需要增加一個隨機數的模塊。使用import關鍵字,并且在文件的頂部。
import random
...
computer = random.randint(1, 3)
randint 函數是返回在a b 兩個數之間,包括a b 之間的數。
上面我們需要電腦的出拳,是從1,3之間。
最后的完善
現在我們對代碼進行運行,隨便輸入1,2,3,python會有如下的提示:
請輸入您要出的是 剪刀(1)/ 石頭(2) / 布(3)2
玩家選擇的拳頭是 2 - 電腦出的拳是 3
很遺憾,主人您落敗了!
現在我們再完善一點:讓電腦的提示更人性化一點:
請輸入您要出的是 剪刀(1)/ 石頭(2) / 布(3)1
玩家選擇的拳頭是 剪刀 - 電腦出的拳是 布
主人獲勝了!
要做到這一點也很容易,使用列表就可以:plays = ["", "剪刀", "石頭", "布"] 第一個之所以為空是因為我們的值是1~3,而列表的第一個數值為plays[0]。
然后再使用打印的語句 print("玩家選擇的拳頭是 %s - 電腦出的拳是 %s" % (plays[player], plays[computer]))
完整代碼如下:
import random
# 輸入1,2,3 分別代表剪刀,石頭,布
player = int(input("請輸入您要出的是 剪刀(1)/ 石頭(2) / 布(3)"))
# 電腦隨機出拳,也是以1,2,3分別代表剪刀,石頭,布
computer = random.randint(1, 3)
plays = ["", "剪刀", "石頭", "布"]
print("玩家選擇的拳頭是 %s - 電腦出的拳是 %s" % (plays[player], plays[computer]))
# 比較輸贏
if ((player == 1 and computer == 3)
or (player == 2 and computer == 1)
or (player == 3 and computer == 2)):
print("主人獲勝了!")
elif player == computer:
print("主人和電腦平局了!")
else:
print("很遺憾,主人您落敗了!")
要注意PyCharm的提示,寫出符合規范的代碼。Shift+F10運行代碼。
謝謝大家!
總結
以上是生活随笔為你收集整理的python编写剪刀石头布游戏_闲着也是闲着:PYTHON 编写剪刀石头布游戏的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python停止线程池_详解python
- 下一篇: vue 封装组件供全局使用_vue 封装