为什么使用os.path.join操作系统用pygame/pyganim导致错误?

2024-09-30 12:22:30 发布

您现在位置:Python中文网/ 问答频道 /正文

所以我尝试用pygame和pyganim创建一个游戏

我喜欢用文件夹把我的游戏文件分为脚本、图像、动画等

如果我使用操作系统模块和os.path.join操作系统在尝试用pyganimation创建动画对象时,要找到文件所在的文件夹,我得到了错误

      File "H:\Projects\Arcflash\Arcflash.py", line 35, in <module>
        Pyganim_Arcflash = pyganim.PygAnimation([(os.path.join("Images\Animation\Arcflash", 'Arcflash_001'))])
      File "C:\Python27\lib\site-packages\pyganim\__init__.py", line 165, in __init__
        frame = (frames[i][0], int(frames[i][1]))
    ValueError: invalid literal for int() with base 10: 'm'

这是我当前代码的一个片段

^{pr2}$

我的目标是让pyganim在文件夹中拍摄图像,而我得到的是错误。 帮忙吗?在

(这个问题可能格式不太好,我对这个网站不满意,我最后的问题也没有得到很好的答复)

编辑1:只是我想解决的问题

1:不使用列表

2:放置os.path.join操作系统在很多不同的地方,根据我的逻辑,它会去哪里

唯一能真正修复这个错误的方法是不使用文件夹,但这看起来很糟糕,我对这种方法不感兴趣。我宁愿不使用pyganim。在


Tags: 文件pathinpy图像文件夹游戏os
1条回答
网友
1楼 · 发布于 2024-09-30 12:22:30

这是因为pyganization构造函数需要一个元组列表,但是您传递了两个字符串:(Arcflash_list[4]), (Arcflash_list[5])。您忘了为这些帧添加整数,所以当pygame试图从元组中用frames[i][1]获取整数时,它最终会索引字符串Images\Animation\Arcflash\Arcflash_005.png。在

相关问题 更多 >

    热门问题