pygame (1) 移动小乌龟
小乌龟图片素材:
第一个简单的小游戏:
小乌龟会不断的移动,并且每当到达窗口的左右边界的时候,还会自动的掉头。
源码:
import pygame
import sys# 导入sys模块,退出时使用
pygame.init()# 初始化Pygame
size = width, height = 600, 400
speed = [-2, 1]
bg = (255, 255, 255) # RGB,这里是白色背景
screen = pygame.display.set_mode(size)# 创建指定大小的窗口 Surface
pygame.display.set_caption("初次见面,请大家多多关照!")# 设置窗口标题
turtle = pygame.image.load("turtle.png")# 加载图片
position = turtle.get_rect()#get_rect() 获得图像的位置矩形
while True:
for event in pygame.event.get():
if event.type == pygame.QUIT:#退出事件
sys.exit()
position = position.move(speed)# 移动图像
if position.left < 0 or position.right > width: # 翻转图像
turtle = pygame.transform.flip(turtle, True, False)
# 反方向移动,flip()第一个参数是反转对象,第二个是水平翻转,第三个是垂直翻转
speed[0] = -speed[0]
if position.top < 0 or position.bottom > height:
speed[1] = -speed[1]
screen.fill(bg)# 填充背景
screen.blit(turtle, position)# 更新图像
#blit()方法是将一个surface放到另外一个surface对象上
pygame.display.flip() # 更新界面
pygame.time.delay(10) # 延迟10毫秒
pygame (1) 移动小乌龟的更多相关文章
- pygame --- 可怜的小乌龟
来于----@小甲鱼工作室 import pygame import sys from pygame.locals import * #初始化 pygame.init() size = width,h ...
- 从Scratch到Python——python turtle 一种比pygame更加简洁的实现
从Scratch到Python--python turtle 一种比pygame更加简洁的实现 现在很多学校都开设了Scratch课程,学生可以利用Scratch创作丰富的作品,然而Scratch之后 ...
- 让小乌龟可以唱歌——对Python turtle进行拓展
在Scratch中,小猫是可以唱歌的,而且Scratch的声音木块有着丰富的功能,在这方面Python turtle略有欠缺,今天我们就来完善一下. Python声音模块 Python处理声音的模块很 ...
- Python Pygame (4) 图像的变换
Pygame中的transform模块可以使得你能够对图像(也就是Surface对象)做各种动作,列如左右上下翻转,按角度转动,放大缩小......,并返回Surface对象.这里列举了transfo ...
- Python Pygame (2) 事件
程序在运行期间会产生许许多多的事件,事件随时可能发生(如移动鼠标,点击鼠标,敲击键盘按键),Pygame的做法是将所有的事件都放到事件队列里,通过for循环语句迭代取出每一条事件,然后处理关注的事件即 ...
- pygame---制作一只会转弯的小乌龟
Pygame Pygame是跨平台Python模块,专为电子游戏设计,包含图像.声音.建立在SDL基础上,允许实时电子游戏研发而无需被低级语言(如机器语言和汇编语言)束缚. 包含图像.声音. 建立在S ...
- pygame学习笔记
pygame参考文档pdf版:pygame API html版 pygame API 石头剪子布的简单小游戏,待改进的地方,自适应大小.感兴趣的小伙伴可以依据get_surface()返回值(即当前窗 ...
- centos上安装pygame
安装前依赖包检查及安装 python-devel SDL_image-devel SDL_mixer-devel SDL_ttf-devel SDL-devel numpy subversion po ...
- pygame开发PC端微信打飞机游戏
pygame开发PC端微信打飞机游戏 一.项目简介 1. 介绍 本项目类似曾经火爆的微信打飞机游戏.游戏将使用Python语言开发,主要用到pygame的API.游戏最终将会以python源文件gam ...
随机推荐
- SQL Server系统表sysobjects
sysobjects 表 在数据库内创建的每个对象(约束.默认值.日志.规则.存储过程等)在表中占一行.只有在 tempdb 内,每个临时对象才在该表中占一行. sysobjects 表结构: 列名 ...
- JavaIO流(输入输出操作)
Java中执行输出和输入操作,需要通过IO流.例如最常见的System.out.println()就是一个输出流.IO流的类比较多,但核心体系就是由File. InputStream .OutputS ...
- putty登录出现access denied的解决办法
[转]https://www.aliyun.com/jiaocheng/152659.html 在/etc/ssh/sshd_config 中有个 PermitRootLogin, 改成“Permit ...
- swiper 导航有多个,被点击的项居中显示。
<div class="swiper-container"> <div class="swiper-wrapper"> <div ...
- MongoDB Linux安装
MongoDB 提供了 linux 各发行版本 64 位的安装包,你可以在官网下载安装包. 下载地址:https://www.mongodb.com/download-center#community ...
- windows下开启 PHP扩展Redis
Redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(sorted set ...
- Python学习:20.Python网络编程(Socket)
一.Socket介绍 我们知道两个进程如果需要进行通讯,最基本的一个前提是能够唯一标示一个进程.在本地进程通讯中可以使用PID来唯一标示一个进程,但PID只在本地唯一,网络中的两个进程PID冲突几率很 ...
- www.pantom.top
新建小站 https://www.pantom.top
- 20155216 2016-2017-2 《Java程序设计》第十周学习总结
20155216 2016-2017-2 <Java程序设计>第十周学习总结 教材学习内容总结 了解计算机网络基础 概念 计算机网络基础,是指将地理位置不同的具有独立功能的多台计算机及其外 ...
- 20155308&20155316 2017-2018-1 《信息安全系统设计基础》实验一
20155308&20155316 2017-2018-1 <信息安全系统设计基础>实验一 此次实验我和黄月同学一起做了1.2.3.5项,第4项在实验课上做完了,但是没有按时提交. ...