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和MD5实现网站挂马检测程序
Mar 13 Python
以视频爬取实例讲解Python爬虫神器Beautiful Soup用法
Jan 20 Python
深入学习Python中的上下文管理器与else块
Aug 27 Python
Window环境下Scrapy开发环境搭建
Nov 18 Python
Python自动发送邮件的方法实例总结
Dec 08 Python
使用python爬取抖音视频列表信息
Jul 15 Python
解决Django migrate不能发现app.models的表问题
Aug 31 Python
python中的subprocess.Popen()使用详解
Dec 25 Python
Python读取VOC中的xml目标框实例
Mar 10 Python
Python datetime 如何处理时区信息
Sep 02 Python
python利用tkinter实现图片格式转换的示例
Sep 28 Python
Matlab如何实现矩阵复制扩充
Jun 02 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
盘点被央视点名过的日本动画电影 一部比一部强
2020/03/08 日漫
PHP4实际应用经验篇(5)
2006/10/09 PHP
php去除数组中重复数据
2014/11/18 PHP
php实现的简单检验登陆类
2015/06/18 PHP
PHP设计模式之模板方法模式定义与用法详解
2018/04/02 PHP
thinkPHP5框架分页样式类完整示例
2018/09/01 PHP
Javascript Jquery 遍历Json的实现代码
2010/03/31 Javascript
js中字符替换函数String.replace()使用技巧
2011/08/14 Javascript
将nodejs打包工具整合到鼠标右键的方法
2013/05/11 NodeJs
在javascript中实现函数数组的方法
2013/12/25 Javascript
浅谈javascript函数式编程
2015/09/06 Javascript
jQuery组件easyui对话框实现代码
2016/08/25 Javascript
解决bootstrap中使用modal加载kindeditor时弹出层文本框不能输入的问题
2017/06/05 Javascript
JS判断微信扫码的方法
2017/08/07 Javascript
Three.js基础学习之场景对象
2017/09/27 Javascript
vue 页面加载进度条组件实例
2018/02/05 Javascript
setTimeout与setInterval的区别浅析
2019/03/23 Javascript
解决使用layui对select append元素无效或者未及时更新的问题
2019/09/18 Javascript
js实现提交前对列表数据的增删改查
2020/01/16 Javascript
[48:44]2014 DOTA2国际邀请赛中国区预选赛5.21 TongFu VS HGT
2014/05/22 DOTA
[04:52]2015国际邀请赛LGD战队晋级之路
2015/08/14 DOTA
[53:10]2018DOTA2亚洲邀请赛 4.6 淘汰赛 VP vs VG 第一场
2018/04/11 DOTA
浅析Python编写函数装饰器
2016/03/18 Python
Tensorflow卷积神经网络实例
2018/05/24 Python
Python关于excel和shp的使用在matplotlib
2019/01/03 Python
Python基础学习之基本数据结构详解【数字、字符串、列表、元组、集合、字典】
2019/06/18 Python
升级keras解决load_weights()中的未定义skip_mismatch关键字问题
2020/06/12 Python
奥地利顶级内衣丝袜品牌英国站:Wolford英国
2016/08/29 全球购物
中国跨境电商:Tomtop
2017/03/16 全球购物
生物科学系大学生的自我评价
2013/12/20 职场文书
你懂得怎么写自荐信吗?
2013/12/27 职场文书
爬山的活动方案
2014/08/16 职场文书
小学教代会开幕词
2016/03/04 职场文书
创业计划书之冷饮店
2019/09/27 职场文书
分析并发编程之LongAdder原理
2021/06/29 Java/Android
nginx服务器的下载安装与使用详解
2021/08/02 Servers