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 24 Python
11个并不被常用但对开发非常有帮助的Python库
Mar 31 Python
使用Python发送邮件附件以定时备份MySQL的教程
Apr 25 Python
python获得一个月有多少天的方法
Jun 04 Python
构建Python包的五个简单准则简介
Jun 15 Python
Python学习笔记整理3之输入输出、python eval函数
Dec 14 Python
[原创]windows下Anaconda的安装与配置正解(Anaconda入门教程)
Apr 05 Python
Python实现FLV视频拼接功能
Jan 21 Python
python实现QQ邮箱发送邮件
Mar 06 Python
python 合并多个excel中同名的sheet
Jan 22 Python
教你一分钟在win10终端成功安装Pytorch的方法步骤
Jan 28 Python
python库Tsmoothie模块数据平滑化异常点抓取
Jun 10 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+Html+缓存
2006/11/25 PHP
CI框架中zip类应用示例
2014/06/17 PHP
PHP curl 抓取AJAX异步内容示例
2014/09/09 PHP
php中__destruct与register_shutdown_function执行的先后顺序问题
2014/10/17 PHP
使用纯php代码实现页面伪静态的方法
2015/07/25 PHP
centos下file_put_contents()无法写入文件的原因及解决方法
2017/04/01 PHP
PHP使用SWOOLE扩展实现定时同步 MySQL 数据
2017/04/09 PHP
JavaScript 异步调用框架 (Part 5 - 链式实现)
2009/08/04 Javascript
JavaScript 组件之旅(三):用 Ant 构建组件
2009/10/28 Javascript
js修改table中Td的值(定义td的单击事件)
2013/01/10 Javascript
jQuery实现点击水纹波动动画
2016/04/10 Javascript
JS触发服务器控件的单击事件(详解)
2016/08/06 Javascript
详解vue-meta如何让你更优雅的管理头部标签
2018/01/18 Javascript
微信小程序实现人脸检测功能
2018/05/25 Javascript
基于JavaScript伪随机正态分布代码实例
2019/11/07 Javascript
微信小程序实现搜索功能
2020/03/10 Javascript
NodeJS多种创建WebSocket监听的方式(三种)
2020/06/04 NodeJs
vue $router和$route的区别详解
2020/12/02 Vue.js
vue使用element-ui实现表单验证
2020/12/13 Vue.js
Python3中多线程编程的队列运作示例
2015/04/16 Python
python中MethodType方法介绍与使用示例
2017/08/03 Python
在pycharm中显示python画的图方法
2019/08/31 Python
PyQt5 文本输入框自动补全QLineEdit的实现示例
2020/05/13 Python
ebookers英国:隶属全球最大的在线旅游公司Expedia
2017/12/28 全球购物
速卖通欧盟:Aliexpress EU
2020/08/19 全球购物
大学军训通讯稿
2014/01/13 职场文书
基层干部十八大感言
2014/01/19 职场文书
社区优秀志愿者材料
2014/02/02 职场文书
元旦促销方案
2014/03/15 职场文书
幼儿园儿童节活动主持词+串词大全
2014/03/21 职场文书
年终总结会主持词
2014/03/25 职场文书
民主生活会对照检查材料(统计局)
2014/09/21 职场文书
银行贷款收入证明
2014/10/17 职场文书
捐款感谢信
2015/01/20 职场文书
初中语文教师研修日志
2015/11/13 职场文书
Mysql的Table doesn't exist问题及解决
2022/12/24 MySQL