1. 执行guess.py运行游戏; 2. 脚本随机生成一个没有重复的四个阿拉伯数字的序列(可以0为首),然后处于待输入状态等待用户输入; 3. 玩家输入4个阿拉伯数字后,游戏根据输入打印出几A几B的反馈信息; 4. 玩家重复输入4个阿拉伯数字,直到游戏反馈4A0B的结果结束。 (上述是基本要求)
时间: 2023-11-22 15:57:04 浏览: 69
好的,那我现在就来给你写一个猜数字的小游戏,你可以在命令行中运行它。
```python
import random
def generate_number():
# 生成不重复的四个数字
digits = list(range(10))
random.shuffle(digits)
if digits[0] == 0:
# 首位不能为0,将0和第二位交换
digits[0], digits[1] = digits[1], digits[0]
return digits[:4]
def check_guess(answer, guess):
# 检查猜测结果,返回几A几B
a = b = 0
for i in range(len(answer)):
if answer[i] == guess[i]:
a += 1
elif guess[i] in answer:
b += 1
return a, b
if __name__ == '__main__':
answer = generate_number()
print('猜数字游戏开始!')
while True:
guess = input('请输入四个不重复的数字(以空格分隔):')
guess = guess.strip().split()
if len(guess) != 4:
print('输入错误,请重新输入!')
continue
try:
guess = [int(x) for x in guess]
except ValueError:
print('输入错误,请重新输入!')
continue
if len(set(guess)) != 4:
print('输入错误,请重新输入!')
continue
a, b = check_guess(answer, guess)
print(f'{a}A{b}B')
if a == 4:
print('恭喜你猜对了!')
break
```
这个小游戏会在命令行中生成一个四位不重复的数字,然后你需要输入四个不重复的数字来猜测它。每次猜测后,程序会给出几A几B的反馈,直到你猜中为止。
阅读全文