
Python新手必练:猜数字游戏(附10行代码+趣味升级方案)
Python作为一门简洁易学的编程语言,非常适合初学者入门。今天,我们将通过一个经典的猜数字游戏来练习Python编程。这个游戏不仅简单有趣,还能帮助你巩固基础语法和逻辑思维。
基础版:10行代码实现猜数字游戏
首先,我们来看一个最简单的猜数字游戏实现。这个版本只需要10行代码:
import random
number = random.randint(1, 100)
guess = int(input("猜一个1到100之间的数字:"))
while guess != number:
if guess < number:
print("太小了!")
else:
print("太大了!")
guess = int(input("再猜一次:"))
print("恭喜你,猜对了!")
代码解析:
import random
:导入Python的随机数模块。number = random.randint(1, 100)
:生成一个1到100之间的随机整数。guess = int(input("猜一个1到100之间的数字:"))
:获取用户输入的数字。while guess != number:
:进入循环,直到用户猜对为止。if guess < number:
和else:
:根据用户的猜测给出提示。print("恭喜你,猜对了!")
:当用户猜对时,输出恭喜信息。
趣味升级方案
为了让这个游戏更有趣,我们可以尝试以下几种升级方案:
- 限制猜测次数:给用户设定一个猜测次数的上限,比如10次。如果用户在10次内没有猜中,游戏结束。
import random
number = random.randint(1, 100)
attempts = 10
for attempt in range(attempts):
guess = int(input("猜一个1到100之间的数字:"))
if guess < number:
print("太小了!")
elif guess > number:
print("太大了!")
else:
print("恭喜你,猜对了!")
break
else:
print(f"很遗憾,你没有在{attempts}次内猜中。正确答案是{number}。")
- 增加难度级别:让用户选择难度级别,比如简单(1-50)、中等(1-100)、困难(1-200)。
import random
difficulty = input("选择难度(简单、中等、困难):")
if difficulty == "简单":
number = random.randint(1, 50)
elif difficulty == "中等":
number = random.randint(1, 100)
else:
number = random.randint(1, 200)
guess = int(input(f"猜一个1到{number}之间的数字:"))
while guess != number:
if guess < number:
print("太小了!")
else:
print("太大了!")
guess = int(input("再猜一次:"))
print("恭喜你,猜对了!")
- 记录最高分:记录用户的猜测次数,并在每次游戏结束后显示最高分。
import random
high_score = float('inf')
while True:
number = random.randint(1, 100)
attempts = 0
while True:
guess = int(input("猜一个1到100之间的数字:"))
attempts += 1
if guess < number:
print("太小了!")
elif guess > number:
print("太大了!")
else:
print(f"恭喜你,猜对了!你用了{attempts}次。")
if attempts < high_score:
high_score = attempts
print(f"新的最高分:{high_score}次!")
break
play_again = input("再玩一次?(是/否):")
if play_again != "是":
break
结语
通过这个简单的猜数字游戏,你不仅可以练习Python的基础语法,还可以通过不同的升级方案进一步提升编程能力。希望你能在这个过程中感受到编程的乐趣,并不断挑战自己,尝试更多有趣的编程项目!
学在每日,进无止境!更多精彩内容请关注微信公众号。

原文出处:
内容由AI生成仅供参考,请勿使用于商业用途。如若转载请注明原文及出处。
出处地址:http://www.07sucai.com/tech/638.html
版权声明:本文来源地址若非本站均为转载,若侵害到您的权利,请及时联系我们,我们会在第一时间进行处理。