Python编程pygame模块实现移动的小车示例代码


Posted in Python onJanuary 03, 2018

Pygame是跨平台Python模块,专为电子游戏设计,包含图像、声音。建立在SDL基础上,允许实时电子游戏研发而无需被低级语言(如机器语言和汇编语言)束缚。

最近一个星期学习了一下python的pygame模块,顺便做个小程序巩固所学的,运行效果如下:

Python编程pygame模块实现移动的小车示例代码

其中,背景图"highway.jpg"是使用PhotoShop将其分辨率改变为640 × 480,而小车"car.png"则是将其转变为png格式的图片,并且填充其背景色,让其拥有透明性。

代码测试可用:

# -*- coding: utf-8 -*-

# 背景图以及移动小车图
highway_image_name = "highway.jpg"
car_image_name = "car.png"

# 导入程序相关的模块
import pygame
from pygame.locals import *
from sys import exit

pygame.init()

# 生成窗口以及窗口标题
screen = pygame.display.set_mode((640, 480), 0, 32)
pygame.display.set_caption("Little Case")

# 加载并转换图片
highway = pygame.image.load(highway_image_name).convert()
car = pygame.image.load(car_image_name).convert_alpha()

x = 0
y = 300
z = 1

# 加载以及渲染字体
my_font = pygame.font.SysFont("arial", 16)
text_surface = my_font.render(("%d car" % (z)), True, (0, 0, 255))

# 主循环
while True:
  
  for event in pygame.event.get():
    if event.type == QUIT:
      pygame.display.quit()
      exit()

  # 矩形颜色坐标等  
  rc = (0, 250, 0)
  rp = (560, 0)
  rs = (639, 60)

  x += 0.2
  if x > 640 + car.get_width():
    x = -car.get_width()
    z += 1
    text_surface = my_font.render(("%d cars" % z), True, (0, 0, 255))

  screen.blit(highway, (0, 0))
  screen.blit(text_surface, (620 - text_surface.get_width(), text_surface.get_height()))
  screen.blit(car, (x, y))
  pygame.draw.rect(screen, rc, Rect(rp, rs), 1) #  Rect(左上角的坐标,右下角的坐标)
  
  pygame.display.update()

两张图片:

highway.jpg

Python编程pygame模块实现移动的小车示例代码

car.png

Python编程pygame模块实现移动的小车示例代码

路径自己保存,然后在代码中修改即可。

总结

以上就是本文关于Python编程pygame模块实现移动的小车示例代码的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

Python 相关文章推荐
Python入门篇之数字
Oct 20 Python
Python 提取dict转换为xml/json/table并输出的实现代码
Aug 28 Python
轻松掌握python设计模式之访问者模式
Nov 18 Python
Flask框架的学习指南之制作简单blog系统
Nov 20 Python
Python将多份excel表格整理成一份表格
Jan 03 Python
pytorch + visdom 处理简单分类问题的示例
Jun 04 Python
Python3多目标赋值及共享引用注意事项
May 27 Python
python之拟合的实现
Jul 19 Python
Python 自动登录淘宝并保存登录信息的方法
Sep 04 Python
Python3.7基于hashlib和Crypto实现加签验签功能(实例代码)
Dec 04 Python
通过python连接Linux命令行代码实例
Feb 18 Python
总结Python常用的魔法方法
May 25 Python
python编程实现随机生成多个椭圆实例代码
Jan 03 #Python
Python通过Pygame绘制移动的矩形实例代码
Jan 03 #Python
Python模拟脉冲星伪信号频率实例代码
Jan 03 #Python
Python简单实现socket信息发送与监听功能示例
Jan 03 #Python
python实现Floyd算法
Jan 03 #Python
Python如何生成树形图案
Jan 03 #Python
Python爬取十篇新闻统计TF-IDF
Jan 03 #Python
You might like
PHP无限分类(树形类)的深入分析
2013/06/02 PHP
Linux中用PHP判断程序运行状态的2个方法
2014/05/04 PHP
PHP5.3与5.5废弃与过期函数整理汇总
2014/07/10 PHP
PHP缓存集成库phpFastCache用法
2014/12/15 PHP
PHP简单判断iPhone、iPad、Android及PC设备的方法
2016/10/11 PHP
正则表达式判断是否存在中文和全角字符和判断包含中文字符串长度
2008/09/27 Javascript
jquery ajax提交表单数据的两种实现方法
2010/04/29 Javascript
js创建元素(节点)示例
2014/01/02 Javascript
JavaScript中的数学运算介绍
2014/12/29 Javascript
简介JavaScript中toUpperCase()方法的使用
2015/06/06 Javascript
javascript实现html页面之间参数传递的四种方法实例分析
2015/12/15 Javascript
js采用concat和sort将N个数组拼接起来的方法
2016/01/21 Javascript
详解vue-router和vue-cli以及组件之间的传值
2017/07/04 Javascript
jQuery实现切换隐藏与显示同时切换图标功能
2017/10/29 jQuery
React-native桥接Android原生开发详解
2018/01/17 Javascript
vue实现动态添加数据滚动条自动滚动到底部的示例代码
2018/07/06 Javascript
微信小程序开发之转发分享功能
2019/10/22 Javascript
layui 解决form表单点击无反应的问题
2019/10/25 Javascript
原生js+css调节音量滑块
2020/01/15 Javascript
js判断密码强度的方法
2020/03/18 Javascript
JSONP解决JS跨域问题的实现
2020/05/25 Javascript
[44:04]OG vs Mineski 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/18 DOTA
跟老齐学Python之做一个小游戏
2014/09/28 Python
Python使用MYSQLDB实现从数据库中导出XML文件的方法
2015/05/11 Python
python并发编程之多进程、多线程、异步和协程详解
2016/10/28 Python
Python使用wget实现下载网络文件功能示例
2018/05/31 Python
kali中python版本的切换方法
2019/07/11 Python
django之静态文件 django 2.0 在网页中显示图片的例子
2019/07/28 Python
python实现读取excel文件中所有sheet操作示例
2019/08/09 Python
快速创建python 虚拟环境
2020/11/28 Python
北美个性化礼品商店:Things Remembered
2018/06/12 全球购物
美国精油公司:Plant Therapy
2019/05/17 全球购物
L’Artisan Parfumeur官网:法国香水品牌
2020/08/11 全球购物
大学生职业生涯规划范文
2013/12/31 职场文书
大学校务公开实施方案
2014/03/31 职场文书
pytorch model.cuda()花费时间很长的解决
2021/06/01 Python