小游戏:猜数字
- 简易版
for i in range(3):temp = eval(input("猜一下我想的数字:"))if temp == 7:print("niubi")print("游戏结束")breakelse:a = 2-iprint("还有",a,"次机会")if a == 0:print("游戏结束")
- 升级一:
增加提示性语句
for i in range(10):a = 9 - itemp = eval(input("猜一下我想的数字:"))if temp == 7:print("niubi")print("游戏结束")breakelif temp > 7:print("大了")print("还有",a,"次机会")if a == 0:print("游戏结束")elif temp < 7:print("小了")print("还有",a,"次机会")if a == 0:print("游戏结束")
- 升级二:
随机数字
- 引入模块 random
import random
j = random.randint(1, 100)
for i in range(10):a = 9 - itemp = eval(input("猜一下我想的数字:"))if temp == j:print("niubi")print("游戏结束")breakelif temp > j:print("大了")print("还有",a,"次机会")if a == 0:print("游戏结束")elif temp < j:print("小了")print("还有",a,"次机会")if a == 0:print(j)print("游戏结束")
模块 random介绍
Python 提供了生成随机数的功能,主要通过内置的 random
模块来实现。以下是一些常用的生成随机数的方法:
-
random.random()
:生成一个[0.0, 1.0)区间内的随机浮点数。import random print(random.random())
-
random.uniform(a, b)
:生成一个在指定范围 [a, b] 内的随机浮点数。print(random.uniform(1.0, 10.0))
-
random.randint(a, b)
:生成一个在指定范围 [a, b] 内的随机整数。print(random.randint(1, 10))
-
random.randrange(start, stop[, step])
:从指定范围内按照指定步长返回一个随机数。print(random.randrange(1, 10, 2)) # 从1到9之间返回一个奇数
-
random.choice(seq)
:从序列(如列表、元组等)中随机选择一个元素。print(random.choice([1, 2, 3, 4, 5]))
-
random.shuffle(x[, random])
:将序列x中的元素随机打乱。numbers = [1, 2, 3, 4, 5] random.shuffle(numbers) print(numbers)
-
random.sample(population, k)
:从指定的population中返回一个长度为k的随机样本列表。print(random.sample(range(1, 10), 3)) # 从1到9中随机抽取3个数字
在使用这些函数之前,确保你已经导入了 random
模块。如果你需要在多个函数调用间保持随机数生成的“随机性”一致,可以使用 random.seed()
函数设置随机数生成器的种子。
random.seed(1) # 设置随机数生成器的种子为1
print(random.random())
这样,每次运行程序时,生成的随机数序列将是一样的,这在测试和调试时非常有用。
while 循环改编
- while 循环回顾
i = 0
while i <= 10:#i+=1 位置在前在后结果不同print(i)#i+=1
- 改编一:
基础版
import random
temp = eval(input("num:"))
i = random.randint(1,100)
j = 0
while temp != i:if temp > i:print("大了")else:print("小了")a = 9-jprint("还有",a,"次机会")j += 1if a == 0:print("失败")breaktemp = eval(input("num:"))if temp == i:print("niubi")
- 改编二:
编程思想改变
import random
secret = random.randint(1,10)
temp = input("现在心里想的是哪个数字:")
guess = int (temp)
times=1
while (guess != secret) and (times < 3):if guess > secret:print("大了")else:print("小了")temp= input ("请再试试吧:")guess = int (temp)times = times+ 1
if (times <= 3) and (guess == secret):print("good")
else:print("defeat")