以下**直接用python命令就可以執行:
ps: 程式會在同目錄下建立』record.txt『的檔案,用於記錄每一次遊戲的過程
from datetime import datetime
from random import randint
defguide_page
(guide_word)
:print
('*'*10
+ guide_word +
'*'*10)
defall_num
(n):
""" 判斷n是否為數字型別 """
return n.isdigit(
)def
num_equal
(ls)
:""" 判斷列表或元組是否相等 """
return ls[0]
== ls[1]
defset_final_num
(num1, num2)
:""" 獲取區間內隨機數,用於使用者猜數字 """
num_list =
[num1, num2]
# 返回乙個符合條件的filter物件
num_str_list =
list
(filter
(lambda n: all_num(n)
, num_list)
)# 判斷使用者輸入的是否為數字,並且兩個數字不能相等,且起始區間要小於終止區間
iflen
(num_str_list)!=2
:return
false
num_list = construct_range_value(num1, num2)
if num_equal(num_list)
or num_list[0]
> num_list[1]
:return
false
print
("所產生的隨機數區間為:[, ]"
.format
(num1, num2)
)return randint(num_list[0]
, num_list[1]
)def
construct_range_value
(num1, num2)
:""" 轉換使用者輸入的兩個區間數字str型別為int型別 """
return
[int
(num1)
,int
(num2)
]def
check_num_legal
(num, ls)
:""" 判斷num是否在區間範圍內,不在返回false """
ifnot all_num(num)
:return
false
num =
int(num)
if num < ls[0]
or num > ls[1]
:return
false
return
true
defwrite_record
(times, value)
:""" 記錄每次輸入的有效數字的遊戲過程 """
file_name =
'record.txt'
value =
": \n"
.format
(times, value)
with
open
(file_name,
'a', encoding=
'utf-8'
)as f:
f.write(value)
f.flush(
)def
main()
:""" 遊戲入口函式 """
while
true
: guide_page(
'歡迎進入數字猜猜猜小遊戲'
) num1 =
input
('數字區間起始值:'
) num2 =
input
('數字區間終止值:'
)# 隨機生成數
random_final_num = set_final_num(num1, num2)
ifnot random_final_num:
print
("對不起,請輸入有效區間數字!"
)continue
# 區間數字列表
n1_n2 = construct_range_value(num1, num2)
# 猜測次數
count =
1while
true
: guess_num =
input
("請輸入您猜測的數字:"
)# 檢查使用者輸入的字元合法性
is_legal = check_num_legal(guess_num, n1_n2)
guess_num =
int(guess_num)
ifnot is_legal:
print
("對不起,您輸入的數字未在指定區間!"
)continue
now_time = datetime.now(
)if guess_num > random_final_num:
write_record(now_time,
"第次猜測的數字為:"
.format
(count, guess_num)
) count +=
1print
("higher than the answer"
)continue
elif guess_num < random_final_num:
write_record(now_time,
"第次猜測的數字為:"
.format
(count, guess_num)
) count +=
1print
("lower than the answer"
)continue
else
: write_record(now_time,
"第次猜測的數字為:,並且贏得了遊戲!"
.format
(count, guess_num)
)print
("恭喜您,只用了次就贏得了遊戲!"
.format
(count)
)return
if __name__ ==
'__main__'
: main(
)
python實現猜數字小遊戲
目錄 1 需求分析 2 實現 1 隨機生成乙個1 1000之間的數。2 10次猜數字的機會,如果沒有猜正確,遊戲結束。3 輸入 q 則退出遊戲。usr bin env python coding utf 8 猜數字遊戲 import random rule 遊戲規則 1 隨機生成乙個1 1000之間...
Python實現猜數字小遊戲
guess a number import random i 1 while i 2 ii 1 game input do you want to play?if playing,type y if game y while ii 2 z max input 你要猜的最大數字是什麼?n try a ...
猜數字小遊戲實現
1.猜字謎小遊戲,隨機生成乙個隨機數,使用者去猜,如果使用者猜的大了就提示使用者猜的太大了,如果使用者猜的小了,就提示使用者猜的太小了,如果使用者猜中了就恭喜您猜對了.寫乙個輸出函式,給玩家乙個提示,提供選擇。1.進入遊戲 2.退出遊戲 void mnue printf printf n print...