试过了,也不行啊
File "D:\vs\python\alien\ship.py", line 10, in __init__
self.image=pygame.image.load(os.path.join('images','ship.bmp'))
pygame.error: Couldn't open images\ship.bmp
错误提示里的目录是对的,就是报错
代码:
import pygame
import os
class Ship():
def __init__(self,ai_settings,screen):
#初始化飞船并设置其初始位置
self.screen=screen
self.ai_settings=ai_settings
#加载飞船图像并获取其外接矩形
# self.image=pygame.image.load(r"D:\vs\python\alien\images\ship.bmp")
self.image=pygame.image.load(os.path.join('images','ship.bmp'))
self.rect=self.image.get_rect()
self.screen_rect=screen.get_rect()
#将每艘新飞船放在屏幕底部中央
self.rect.centerx=self.screen_rect.centerx
self.rect.bottom=self.screen_rect.bottom
self.center=float(self.rect.centerx)
self.moving_right=False
self.moving_left=False
def update(self):
#根据移动标志调整飞船的位置
if self.moving_right and self.rect.right<self.screen_rect.right:
self.center += self.ai_settings.ship_speed_factor
if self.moving_left and self.rect.left>0:
self.center -= self.ai_settings.ship_speed_factor
https://www.pygame.org/docs/ref/image.html 官方文档:
You should use os.path.join() for compatibility.
eg. asurf = pygame.image.load(os.path.join('data', 'bla.png'))