首页 > 编程语言 >Python——pygam库实现弹跳小球

Python——pygam库实现弹跳小球

时间:2022-12-04 20:24:06浏览次数:39  
标签:ball 窗口 ballrect Python pygame pygam 弹跳 speed event

代码实现:

import sys     # 导入sys模块
import pygame     # 导入pygame模块

pygame.init()        # 初始化pygame
size = width,height= 700,500  # 设置窗口
screen = pygame.display.set_mode(size)    # 显示窗口
color = (0,0,0)      # 设置颜色
ball = pygame.image.load("ball01.jpg")     # 加载图片
ballrect = ball.get_rect()       # 获取矩形区域
speed = [5,5]    # 设置移动的X轴,Y轴的距离
clock = pygame.time.Clock()       # 设置始终
# 执行死循环,确保窗口一直显示
while True:
    clock.tick(60)       # 每秒执行60次
    for event in pygame.event.get():     # 检查事件
        if event.type == pygame.QUIT:    # 如果单击关闭窗口,则退出
            pygame.quit()         # 退出pygame
            sys.exit()
    ballrect = ballrect.move(speed)      # 移动小球
    # 碰到左右边缘
    if ballrect.left < 0 or ballrect.right > width:
        speed[0] = -speed[0]
    # 碰到上下边缘
    if ballrect.top <0 or ballrect.bottom > height:
        speed[1] = -speed[1]
    screen.fill(color)  # 填充颜色
    screen.blit(ball,ballrect)        # 将图片画到窗口上
    pygame.display.flip()     # 更新全部提示

  运行效果:

 

标签:ball,窗口,ballrect,Python,pygame,pygam,弹跳,speed,event
From: https://www.cnblogs.com/AZhua/p/16950597.html

相关文章

  • 优雅简单玩转python3异步并发
    在python3之后,随着async/await引入,异步调用以全新而便捷的方式让人眼前一亮。首先,尽量用async/await定义协程这里以使用aiohttp请求网络,async函数中,不要使用blockingio......
  • 进入python的世界_day44_前端——CSS的学习(边框、定位、浮动、溢出解决、堆叠等)
    一、CSS之调整边框1.边框#左border-left-width:30px;border-left-style:solid;border-left-color:coral;#上border-top-color:coral;border-top-width:30......
  • 零基础学python 第四章 序列的应用
    实例1 输出每日一贴importdatetimemot=["今天星期一:\n坚持下去不是因为我很坚强,而是因为我别无选择。","今天星期二:\n含泪播种的人一定能笑着收获。",......
  • 零基础学python 第三章 流程操作语句
    实例1判断输入的是不是黄蓉所说的数print("今有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二,问几何?\n")number=int(input("请输入您认为符合条件的的数:"))ifn......
  • python(8):python发送邮件
    邮件发送测试报告前置条件:开通QQ邮箱第三方登录,并拿到密码; 步骤1:编写测试代码,先发送一个文本的邮件在sample文件中编写线性代码:  步骤2:编写一个带附件的邮件......
  • python分布式框架celery(二)
    一、什么是Celery1.1、celery是什么Celery是一个简单、灵活且可靠的,处理大量消息的分布式系统,专注于实时处理的异步任务队列,同时也支持任务调度。Celery的架构由三......
  • python(7):python连接mysql数据库并获取数据
    python连接mysql数据库下载pymysql:pipinstallpymysql编写代码:importpymysqlclassMysqlUtils:def__init__(self):self.conn_obj=pymysql.conne......
  • 关于python深拷贝,deepcopy和 copy的知识随手记
    Python中copy模块下的deepcopy函数使用,采用的深层拷贝,并开辟新的空间   如果用copy函数,  如果拷贝的是不可变类型: ......
  • 网页返回unicode源码 python解码详细步骤
    刚入门python!记录一下网页返回源码,中文部分被unicode编码,python如何处理1.先提取编码后的数据(如果不提取正篇源码直接unicode解码,解码方法无法识别)这个步骤属于逻辑......
  • python3的re正则的简单使用
    importre#match----------------------------------------------------print(re.match(r'www','www.runoob.com').span())#(0,3)print(re.match('com','www.ru......