Python編程pygame模塊實(shí)現(xiàn)移動(dòng)的小車示例代碼
Pygame是跨平臺(tái)Python模塊,專為電子游戲設(shè)計(jì),包含圖像、聲音。建立在SDL基礎(chǔ)上,允許實(shí)時(shí)電子游戲研發(fā)而無(wú)需被低級(jí)語(yǔ)言(如機(jī)器語(yǔ)言和匯編語(yǔ)言)束縛。
最近一個(gè)星期學(xué)習(xí)了一下python的pygame模塊,順便做個(gè)小程序鞏固所學(xué)的,運(yùn)行效果如下:

其中,背景圖"highway.jpg"是使用PhotoShop將其分辨率改變?yōu)?40 × 480,而小車"car.png"則是將其轉(zhuǎn)變?yōu)閜ng格式的圖片,并且填充其背景色,讓其擁有透明性。
代碼測(cè)試可用:
# -*- coding: utf-8 -*-
# 背景圖以及移動(dòng)小車圖
highway_image_name = "highway.jpg"
car_image_name = "car.png"
# 導(dǎo)入程序相關(guān)的模塊
import pygame
from pygame.locals import *
from sys import exit
pygame.init()
# 生成窗口以及窗口標(biāo)題
screen = pygame.display.set_mode((640, 480), 0, 32)
pygame.display.set_caption("Little Case")
# 加載并轉(zhuǎn)換圖片
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))
# 主循環(huán)
while True:
for event in pygame.event.get():
if event.type == QUIT:
pygame.display.quit()
exit()
# 矩形顏色坐標(biāo)等
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(左上角的坐標(biāo),右下角的坐標(biāo))
pygame.display.update()
兩張圖片:
highway.jpg

car.png

路徑自己保存,然后在代碼中修改即可。
總結(jié)
以上就是本文關(guān)于Python編程pygame模塊實(shí)現(xiàn)移動(dòng)的小車示例代碼的全部?jī)?nèi)容,希望對(duì)大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站其他相關(guān)專題,如有不足之處,歡迎留言指出。感謝朋友們對(duì)本站的支持!
相關(guān)文章
對(duì)python requests的content和text方法的區(qū)別詳解
今天小編就為大家分享一篇對(duì)python requests的content和text方法的區(qū)別詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-10-10
Python處理時(shí)間日期坐標(biāo)軸過(guò)程詳解
這篇文章主要介紹了Python處理時(shí)間日期坐標(biāo)軸過(guò)程詳解,當(dāng)日期數(shù)據(jù)作為圖表的坐標(biāo)軸時(shí)通常需要特殊處理,應(yīng)為日期字符串比較長(zhǎng),容易產(chǎn)生重疊現(xiàn)象,需要的朋友可以參考下2019-06-06
python如何使用requests提交post請(qǐng)求并上傳文件(multipart/form-data)
這篇文章主要給大家介紹了關(guān)于python如何使用requests提交post請(qǐng)求并上傳文件(multipart/form-data)的相關(guān)資料,Python有許多庫(kù)支持,它們可以簡(jiǎn)化HTTP上的數(shù)據(jù)傳輸,requests庫(kù)是最受歡迎的Python包之一,因?yàn)樗诰W(wǎng)絡(luò)刮削中被大量使用,需要的朋友可以參考下2023-11-11
Python+OpenCV實(shí)戰(zhàn)之拖拽虛擬方塊的實(shí)現(xiàn)
這篇文章主要介紹了如何利用Python+OpenCV實(shí)現(xiàn)拖拽虛擬方塊的效果,即根據(jù)手指坐標(biāo)位置和矩形的坐標(biāo)位置,判斷手指點(diǎn)是否在矩形上,如果在則矩形跟隨手指移動(dòng),感興趣的可以了解一下2022-08-08
Pycharm同步遠(yuǎn)程服務(wù)器調(diào)試的方法步驟
這篇文章主要介紹了Pycharm同步遠(yuǎn)程服務(wù)器調(diào)試,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11
Python?Setuptools的?setup.py實(shí)例詳解
setup.py是一個(gè)?python?文件,它的存在表明您要安裝的模塊/包可能已經(jīng)用?Setuptools?打包和分發(fā),這是分發(fā)?Python?模塊的標(biāo)準(zhǔn)。?它的目的是正確安裝軟件,本文給大家講解Python?Setuptools的?setup.py感興趣的朋友跟隨小編一起看看吧2022-12-12
python opencv實(shí)現(xiàn)切變換 不裁減圖片
這篇文章主要為大家詳細(xì)介紹了python opencv實(shí)現(xiàn)切變換,不裁減圖片,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-07-07
安裝Keras,tensorflow,并實(shí)現(xiàn)將虛擬環(huán)境添加到j(luò)upyter?notebook
這篇文章主要介紹了安裝Keras,tensorflow,并實(shí)現(xiàn)將虛擬環(huán)境添加到j(luò)upyter?notebook,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-03-03

