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正则表达式match和search用法实例
Mar 26 Python
Python使用内置json模块解析json格式数据的方法
Jul 20 Python
深入浅出分析Python装饰器用法
Jul 28 Python
python学习笔记之列表(list)与元组(tuple)详解
Nov 23 Python
Python3中关于cookie的创建与保存
Oct 21 Python
Python2与Python3的区别实例分析
Apr 11 Python
Python使用type关键字创建类步骤详解
Jul 23 Python
python flask搭建web应用教程
Nov 19 Python
python使用nibabel和sitk读取保存nii.gz文件实例
Jul 01 Python
Python常用类型转换实现代码实例
Jul 28 Python
一个入门级python爬虫教程详解
Jan 27 Python
Python数据分析之pandas函数详解
Apr 21 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将Excel导入数据库及数据库数据导出至Excel的方法
2015/06/24 PHP
thinkphp3.x中session方法的用法分析
2016/05/20 PHP
PHP文字转图片功能原理与实现方法分析
2017/08/31 PHP
PHP开发中解决并发问题的几种实现方法分析
2017/11/13 PHP
js实现ASP分页函数 HTML分页函数
2006/09/22 Javascript
JQuery 学习笔记 选择器之三
2009/07/23 Javascript
JavaScript实现拼音排序的方法
2012/11/20 Javascript
jquery中的ajax方法怎样通过JSONP进行远程调用
2014/05/04 Javascript
jQuery中size()方法用法实例
2014/12/27 Javascript
CSS javascript 结合实现悬浮固定菜单效果
2015/08/23 Javascript
JQuery操作textarea,input,select,checkbox方法
2015/09/02 Javascript
针对BootStrap中tabs控件的美化和完善(推荐)
2016/07/06 Javascript
Bootstrap CSS组件之下拉菜单(dropdown)
2016/12/17 Javascript
微信小程序switch组件使用详解
2018/01/31 Javascript
fetch 如何实现请求数据
2018/12/20 Javascript
js中对象和面向对象与Json介绍
2019/01/21 Javascript
利用d3.js制作连线动画图与编辑器的方法实例
2019/09/05 Javascript
JS中间件设计模式的深入探讨与实例分析
2020/04/11 Javascript
[10:18]2018DOTA2国际邀请赛寻真——Fnatic能否笑到最后?
2018/08/14 DOTA
Python PyQt5标准对话框用法示例
2017/08/23 Python
Python实现文件信息进行合并实例代码
2018/01/17 Python
PyCharm代码整体缩进,反向缩进的方法
2018/06/25 Python
Python实现的服务器示例小结【单进程、多进程、多线程、非阻塞式】
2019/05/23 Python
python lambda表达式(匿名函数)写法解析
2019/09/16 Python
Django 框架模型操作入门教程
2019/11/05 Python
tensorflow使用CNN分析mnist手写体数字数据集
2020/06/17 Python
python自动化办公操作PPT的实现
2021/02/05 Python
世界上最全面的草药补充剂和顶级品牌维生素网站:HerbsPro
2019/01/20 全球购物
中间件分为哪几类
2016/09/18 面试题
启动一个线程是用run()还是start()
2016/12/25 面试题
医科大学生毕业的自我评价分享
2013/11/12 职场文书
优秀员工年终发言演讲稿
2014/01/01 职场文书
社会实践评语
2014/04/28 职场文书
大学生实习证明范文(5篇)
2014/09/18 职场文书
学校法制宣传日活动总结
2014/11/01 职场文书
python绘制简单直方图(质量分布图)的方法
2022/04/21 Python