Python随机数和猜数字小游戏
Python之random库(
模块
)详见
random --- 生成伪随机数 — Python 3.11.2 文档
random.randint(a,b) 生成一个[a,b]之间的整数 (包含a、b)
random 库是 python 版本中自带的一个随机库,无需安装,你直接在py文件中加入 import random 即可使用。
文本界面版
源码如下:
import random
# 随机生成一个1-100之间的整数
number = random.randint(0, 100)
# 统计所猜次数
count = 0
while True:
# 每循环一次,count加1
count += 1
# input函数从键盘输入要猜的数字,并转换为int类型
choice = int(input("请输入你要猜测的数字[1~100]:"))
# 大于目标数字
if choice > number:
print("你猜大了")
# 小于目标数字
elif choice < number:
print("你猜小了")
# 等于目标数字
else:
print("你猜对了,真棒!")
print(f"你一共用了{count}次机会")
break
GUI(图形用户界面)版
Tkinter 是内置到 python 的安装包中的图形开发界面的库。无需安装,你直接在py文件中加入 import tkinter即可使用。
源码如下:
import tkinter as tk
import random
def eBtnReset():
global num
num=0
global number
number=random.randint(1,100)
print(number) #
labelqval("请输入1-100之间得任意整数:")
btnGuess['state'] = "normal"
def eBtnGuess(event):
#检查输入框是否为空
if entry_a.get()=="":
return
global num
num+=1
val_a=int(entry_a.get())
if val_a==number:
labelqval(f"恭喜你答对了!!! 你猜了{num}次")
btnGuess['state'] = "disabled"
if val_a<number:
labelqval(f"第{num}次,猜小了哦!")
if val_a>number:
labelqval(f"第{num}次,猜大了哦")
def labelqval(vText):
label_val_q.config(label_val_q,text=vText)
root=tk.Tk(className="猜数字游戏")
root.geometry("400x90+200+200")
line_question=tk.Frame(root)
label_val_q=tk.Label(line_question,width="80")
label_val_q.pack(side="left")
line_question.pack(side="top",fill="x")
line_input=tk.Frame(root)
entry_a=tk.Entry(line_input,width="40")
btnGuess=tk.Button(line_input,text="猜")
entry_a.pack(side="left")
entry_a.bind('<Return>',eBtnGuess)
btnGuess.bind('<Button-1>',eBtnGuess)
btnGuess.pack(side="left")
line_input.pack(side="top",fill="x")
line_btn=tk.Frame(root)
btnClose=tk.Button(line_btn,text="关闭",command=root.destroy)
#btnClose.bind('<Button-1>',eBtnClose)
btnClose.pack(side="left")
line_btn.pack(side="top")
btnReset=tk.Button(line_btn,text="新局",command=eBtnReset)
btnReset.pack(side="left")
labelqval("请输入1-100之间得任意整数:")
entry_a.focus_set()
number=random.randint(1,100)
num=0 #猜的次数计数
print(number) #
root.mainloop()
7-3 循环求e的近似值(高教社,《Python编程基础及应用》习题6-7)
7-4 jmu-python-判断是否构成三角形
7-5 jmu-python-输入输出-计算字符串中的数
7-6 jmu-python-随机生成密码
7-7 jmu-python-重复元素判定
7-8 jmu-python-从列表中删除元素
7-10 找出字符串中出现次数最多的字符
7-11 华氏温度到摄氏温度的转换(高教社,《Python编程基础及应用》习题
用python实现猜数字游戏可以加深python初学者循环结构的理解和运用。
猜数字游戏规则如下:电脑程序随机生成一个数字,作为猜数字游戏的最终答案,用户在键盘输入所猜数字。用户每猜一次程序都会做出相应的提示。若用户输入所猜的数字小于电脑随机生成的数字,则提示“你猜小了”;若大于,则提示“你猜大了”;若等于,则提示“恭喜你,猜对了”。
这里我们需要用到一个随机生成数字的库:random,使用如下:
#导入随机生成模块
import
Python随机数猜大小游戏是一种猜数字大小的小游戏。在这个游戏中,程序会随机生成一个数字,玩家需要猜出这个数字,并通过提示来判断猜测的数字是偏大还是偏小。
下面是一个示例的Python代码:
```python
import random
secret = random.randint(1,10) # 生成1到10之间的随机数
temp = input('猜数字:') # 输入猜测的数字
guess = int(temp)
while guess != secret:
temp = input('猜错了重新输入:') # 继续输入猜测的数字
guess = int(temp)
if guess == secret:
print('yes') # 猜对了
else:
if guess > secret:
print('大了') # 猜大了
else:
print('小了') # 猜小了
print('游戏结束')
在这个游戏中,程序会生成一个1到10之间的随机数作为"神秘数字",玩家需要通过输入猜测的数字来猜测这个"神秘数字"。如果猜对了,则显示"yes",游戏结束;如果猜错了,则根据猜测的数字和"神秘数字"的大小关系进行提示,继续猜测,直到猜对为止。
希望对您有帮助!<span class="em">1</span><span class="em">2</span><span class="em">3</span>