Python编程pygame模块实现移动的小车示例代码
作者:whxcer 时间:2021-04-13 10:16:08
Pygame是跨平台Python模块,专为电子游戏设计,包含图像、声音。建立在SDL基础上,允许实时电子游戏研发而无需被低级语言(如机器语言和汇编语言)束缚。
最近一个星期学习了一下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
car.png
路径自己保存,然后在代码中修改即可。
来源:https://www.cnblogs.com/wanghuizhao/p/6012446.html
标签:python,pygame
0
投稿
猜你喜欢
python turtle绘图命令及案例
2022-04-29 10:26:58
Python imgaug库安装与使用教程(图片加模糊光雨雪雾等特效)
2021-06-23 10:07:16
Python实现使用dir获取类的方法列表
2023-01-04 12:18:44
Python3.10耙梳加密算法Encryption种类及开发场景
2021-07-19 00:46:55
如何利用Python模拟GitHub登录详解
2023-11-18 11:08:05
MySQL数据库中CHAR与VARCHAR之争
2011-05-05 16:33:00
django富文本编辑器的实现示例
2021-02-02 06:20:33
WEB标准与XHTML 1.0 Transitional等文档类型介绍
2007-10-20 21:18:00
python中的列表和元组实例详解
2023-07-26 23:04:12
将字符实体引用转换成 Unicode 字符
2011-07-01 12:31:51
Python调用ChatGPT制作基于Tkinter的桌面时钟
2023-05-11 08:23:23
Django 简单实现分页与搜索功能的示例代码
2023-12-26 01:40:16
Django实现支付宝付款和微信支付的示例代码
2021-01-31 10:16:29
python把一个字符串切开的实例方法
2022-07-10 21:52:17
PHP的SQL注入过程分析
2023-11-18 02:53:27
python try...finally...的实现方法
2022-09-27 06:34:35
python操作excel的方法(xlsxwriter包的使用)
2021-10-26 21:47:54
ASP XMLDom在服务器端操作XML文件的主要方法和实现
2011-03-09 11:09:00
pandas去除重复列的实现方法
2022-06-27 12:37:31
简单解析Django框架中的表单验证
2023-09-07 04:51:05