用pygame无法导入图片 import pygame, sys pygame.init() sc

用pygame无法导入图片importpygame,syspygame.init()screen=pygame.display.set_mode([640,480])sc... 用pygame无法导入图片
import pygame, sys
pygame.init()
screen = pygame.display.set_mode([640, 480])
screen.fill([255, 255, 255])
sample = pygame.image.load("sqroot.png")
screen.blit(sample, [320, 240])
pygame.display.flip()
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
pygame.quit()

sys.path里面已经有我添加的路径了 但还是报错couldn't open
用绝对路径报错 pygame.error
写成 sample = pygame.image.load("sqroot.png").convert_alpha() 同样也是couldnt open
展开
 我来答
t59616
2016-09-01 · TA获得超过784个赞
知道小有建树答主
回答量:319
采纳率:50%
帮助的人:342万
展开全部
首先看下图片有问题没,没问题再看看路径,不知道你绝地路径怎么写的,用单斜杠写入绝对路径要加r,比如r"C:\Users\Administrator",按你那种写法,得把图片和py文件放到同一个目录下才能找到。
洛克卡比
2018-02-12 · TA获得超过2440个赞
知道小有建树答主
回答量:787
采纳率:16%
帮助的人:347万
展开全部

先用 os.getcwd() 确认启动器的地址,一般无法 load 图片就是因为写了相对地址但是脚本运行时默认的根地址和文件所在地址不一样。

def get_path(down_path, filename):
    re_path = os.path.split(os.path.abspath(__file__))[0]
    for sing_path in down_path:
        re_path = re_path + '\\' + sing_path

    re_path = re_path + '\\' + filename
    return os.path.join(re_path)


def load_image(down_path, filename):
    return pygame.image.load(get_path(down_path, filename))

写入上述函数,接口是 load_image() , 引入的参数是相对路径(列表形式)和文件名。

比如你的程序文件在 "E:\python_objs\pygame_study\my_obj\" 下,程序使用的图片保存在“E:\python_objs\pygame_study\my_obj\obj_pictures\”里,引入图片就写成

load_image(["obj_pictures"], "pic1.png")
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
编程猪
2019-04-19 · TA获得超过170个赞
知道答主
回答量:80
采纳率:80%
帮助的人:9.5万
展开全部
是不是后缀是.jpg,然后你写成.png了?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式