前面,我們講了變數和字串的一些種類。朋友們,還記得我們之前的那個智障的文字小遊戲嗎?今天,我們要做的第一件事就是來改進我們的文字小遊戲,至於第二件事嘛,先讓我賣個關子,眾位客官,注意咯!
1)首先,根據一些使用者的反饋,我們的遊戲主要有三個方面的不足:
①猜錯的時候程式應該有提示(比如告訴使用者數字猜大了或者是猜小了)
②遊戲每次執行的時候,使用者只能猜一次,應該提供多次機會給使用者去猜測
③遊戲每次執行的答案是一致的,很容易導致答案的外洩,所以我們需要把這個答案設定成隨機的
所以,我們根據這三個要求來實現乙個更人性化的文字小遊戲吧!
第一步:
要實現這個要求,我們要介紹一下條件分支的概念:
這個基本模組是:
if 條件:
縮排 條件為真時執行的操作
else:
縮排 條件為假時執行的語句
所以實現後的**是:
print
('---------歡迎來到王者榮耀---------'
)guess =
input
('請輸入你想要輸入的數字:'
)temp =
int(guess)
if temp ==8:
print
('恭喜你!猜對了'
)print
('遊戲結束!'
)else
:if temp >8:
print
('哥,大了大了~~'
)else
:print
('嘿,小了小了~'
)print
('遊戲結束!'
)
這個就基本實現了我們的第乙個要求:玩遊戲的時候能夠提示猜大或者是猜小的資訊
那我們現在就來看一下第二個要求,要實現不止一次的遊戲體驗機會,這個該怎麼辦呢?莫慌,我們python有while的迴圈結構:
這個基本模組是:
while 條件:
縮排 條件為真時執行的語句
現在我們就來看一下我們的**吧:
print
('---------歡迎來到王者榮耀---------'
)temp =
int(
input
('請輸入你想要輸入的數字:'))
while temp !=8:
if temp >8:
print
('哥,大了大了~~'
)else
:print
('嘿,小了小了~'
) temp =
int(
input
('請重新輸入乙個數字:'))
if temp ==8:
print
('恭喜你!猜對了,遊戲結束!'
)else
:if temp >8:
print
('哥,大了大了~~'
)else
:print
('嘿,小了小了~'
)print
('遊戲結束!'
)
好了,講到這裡,我們再來實現第三個要求吧:
這裡我們要引入乙個隨機的函式模組:random,這也是乙個常見的bif,它裡面有乙個randint函式,就是用來產生隨機數的:
import random print
('---------歡迎來到王者榮耀---------'
) temp =
int(
input
('請輸入你想要輸入的數字:'))
reality = random.randint(1,
10)if temp > reality:
print
('哥,大了大了~~'
)elif temp < reality:
print
('嘿,小了小了~'
)else
:print
('恭喜你!答對了!'
)while temp != reality:
temp =
int(
input
('請重新輸入乙個數字:'))
if temp == reality:
print
('恭喜你!猜對了,遊戲結束!'
)else
:if temp > reality:
print
('哥,大了大了~~'
)else
:print
('嘿,小了小了~'
)print
('遊戲結束!'
)
當然,我們可以更加人性化一點:
①我們可以設定答錯上限是什麼,超過這個上限,使用者就不能繼續玩下去了
②我們可以設定讓介面隔一段時間再出現——不是我們一打完資訊後,下一句話就已經出現了,我們可以讓遊戲變成互動式的
針對第一點,我們就以三次為例吧(這裡,我們還是不可避免的用到while迴圈):
times表示次數
**如下:
import random
print
('---------歡迎來到王者榮耀---------'
)temp =
int(
input
('請輸入你想要輸入的數字:'))
times =
3reality = random.randint(1,
10)if temp > reality:
print
('哥,大了大了~~'
)elif temp < reality:
print
('嘿,小了小了~'
)else
:print
('恭喜你!答對了!'
)times -=
1while temp != reality:
while times >0:
temp =
int(
input
('請重新輸入乙個數字:'))
if temp == reality:
print
('恭喜你!猜對了,遊戲結束!'
) times -=
1else
:if temp > reality:
print
('哥,大了大了~~'
) times -=
1else
:print
('嘿,小了小了~'
) times -=
1else
:print
('您的次數已經耗盡!'
)break
print
('遊戲結束!'
)
至於第二點,我們又需要引入乙個新的bif——time函式
**如下:
import random
import time
print
('---------歡迎來到王者榮耀---------'
)time.sleep(1)
temp =
int(
input
('請輸入你想要輸入的數字:'))
times =
3reality = random.randint(1,
10)if temp > reality:
print
('哥,大了大了~~'
)elif temp < reality:
print
('嘿,小了小了~'
)else
:print
('恭喜你!答對了!'
)times -=
1while temp != reality:
while times >0:
temp =
int(
input
('請重新輸入乙個數字:'))
if temp == reality:
print
('恭喜你!猜對了,遊戲結束!'
) times -=
1else
:if temp > reality:
print
('哥,大了大了~~'
) times -=
1else
:print
('嘿,小了小了~'
) times -=
1else
:print
('您的次數已經耗盡!'
)break
time.sleep(
1.2)
print
('遊戲結束!'
)
其中,time.sleep()後面括號裡既可以填浮點數又可以填整數。
另外,那個random.randint(1,10)包括1但是不含10
好了,到這裡,你已經基本掌握python最基本最基本的知識了,好的,下一期再見!
Python小遊戲改進
前言 本次遊戲是通過在b站自學的python製作的文字小遊戲,在製作之後再通過不斷的改進。改進過程 改進前 改進後 總結 本次主要進行了簡單的python小遊戲改進,改進前的小遊戲猜一次就結束了程式,並且所猜的數字是由 編寫者決定 而改進之中,使用到了隨機數,這就決定了數字是在決定的區間內隨機出現的...
第4時 改進小遊戲
1.python的條件分支 if 條件 執行操作 else 執行操作 2.比較運算子優先順序高於邏輯運算子 3 2 and 1 2 true 3 2 and 1 2 true 3.引入外援 第三個改進要求 每次執行程式產生的答案是隨機的。我們需要引入外援 random 模組 random模組裡有個r...
Python 004改進我們的小遊戲
1.python的比較操作符 2.python的條件分支語法 if 條件 條件為真 true 執行的操作 else 條件為假 false 執行的操作 3.while迴圈 while 條件 條件為真 true 執行的操作 4.python的and操作符可以將任意表示式連線在一起,並得到乙個布林型別的值...