Python学习笔记(二)小游戏之猜数字

导语

作为一个游戏行业的从业者,且python如此强大的情况下,学习之余,写了一个很简单的基于python3开发的小游戏,代码中用了一些python3基础的方法函数,权当是学习总结了。

学习指导

菜鸟教程Python(https://www.runoob.com/python3/python3-tutorial.html)

# coding=utf-8
import random
import traceback
import sys

#结束函数
def endgame():
    str = input()
    if str.upper() == "Y" :
        start()
    elif str.upper() == "N": 
        exit() 
    else:
        print("输入不合法\n请重新输入\nY/N") 
        endgame()

#生成开始函数
def login(num1):
    print("请输入你的数字")
    get_num = input()
    if get_num == "" : 
        print("不允许输入空值\n请重新输入\n")
        login(num1)
    else:
        try:
            int(get_num)
        except ValueError:
            print("输入不合法\n请重新输入\n")
            login(num1)
        if  int(get_num): 
            use_num = int(get_num)
            compear(use_num,num1) 
            
    traceback.print_exc(file=open('warn.txt','w+'))   
    
#比较操作函数
def compear(x,y):
    if x > y :
        print(x,"这个数字太大了")
        return login(y)
    elif x == y :
        print(x,"恭喜你猜对了!\n是否重新开始\nY/N")
        endgame()  
    elif x < y :
        print(x,"这个数字太小了")
        return login(y)
    else :
        print("请输入一个有效值")
        return login(y)

#根据输入值准备一个随机数
def ready(a,b):
    y = random.randint(a,b)
    login(y)

#查阅规则
def result_show():
    with open('./result.txt','r',encoding='utf-8') as f:
        d = f.read()
        print("\n")
        print(d)
    print("以上就是规则的全部内容\n")

#开始函数
def start():
    result_show()
    print("游戏开始!\n请输入本次预测的最小值")
    try:
        a = int(input())
    except ValueError:
            print("输入不合法\n请重新输入\n")
            a = int(input())
    
    print("请输入本次预测的最大值")
    
    try:
        b = int(input())
    except ValueError:
            print("输入不合法\n请重新输入\n")
            b = int(input())   
            
    ready(a,b)



start()

Python语法

#1.函数声明 
def function name():
	print "hello the world of Python"
	
#2.文件I/O 
with open ('xxx.xxx') as f:
	d = f.read()

#3.异常处理
try :
	code1
except TypeError:	#对异常类型进行区分处理,万能处理Exception
	code2
finally:
	code3

#4输入
d = input()				#允许表达式输入
f = raw_input()			#将所有输入作为字符串处理

#5变量类型
d = input()				#接收值为str类型,不能直接和num类型比较,需要进行强制类型转换
if int(d) > 0 :
	print"bigger one"

#6模块引入
import sys
import random
import traceback

#7代码类型声明
# coding=utf-8   #通常写在开头

#8打印错误
traceback.print_exc(file=open('warn.txt','w+')  #通过引用的traceback的模块中的函数写入指定文件

结语

这个游戏,写的匆忙,也没有进行什么相关功能的优化,主要目的还是为了方便学习python的相关内容,如有不足,还望大佬指出,后生在此先谢过。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
学习 Python 开发窗口化小游戏,如猜数字,是一个很好的实践编程技能和理解事件驱动编程的方式。在 Python 中,你可以使用 `pygame` 库来创建这样的游戏,它提供了丰富的图形界面和游戏编程功能。 首先,你需要安装 `pygame`,可以通过 pip 来安装: ```bash pip install pygame ``` 接下来,我们可以简单地概述一下制作猜数字游戏的基本步骤: 1. **初始化 Pygame**: ```python import pygame pygame.init() ``` 2. **设置窗口**: ```python screen = pygame.display.set_mode((640, 480)) pygame.display.set_caption("Guess the Number") ``` 3. **生成随机数**: ```python secret_number = random.randint(1, 100) ``` 4. **主循环**: - 获取用户输入 - 检查输入并更新游戏状态 - 渲染游戏画面 - 更新屏幕 - 处理事件(如关闭窗口) 5. **猜数过程**: - 显示提示信息(比如“太低了”或“太高了”) - 当玩家猜中数字时,显示胜利消息并结束游戏 6. **退出游戏**: ```python if event.type == pygame.QUIT: pygame.quit() quit() ``` 下面是基础版本的猜数字游戏代码片段: ```python import pygame import random # ... (步骤2-5的代码) running = True while running: for event in pygame.event.get(): if event.type == pygame.QUIT: running = False # 用户输入 guess = int(pygame.font.SysFont('Arial', 30).render(str(input_box.get_text()), True, (0, 0, 0))) input_box.updateguess(guess) # 检查猜测并更新游戏状态 if guess == secret_number: pygame.time.delay(1000) # 延迟1秒显示胜利消息 victory_message = "Congratulations! You guessed the number!" screen.blit(victory_message, (50, 200)) elif guess < secret_number: feedback = "Too low!" else: feedback = "Too high!" # 渲染反馈 screen.blit(feedback, (50, 150)) # 更新屏幕 pygame.display.flip() pygame.quit() ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值