如何解决无法初始化 Pygame 显示,但只能在通过 tox 运行时
我有以下最小的测试程序。
import pygame
pygame.init()
print(pygame.display.list_modes())
如果我尝试通过 Tox 命令运行此程序,则会收到错误消息:
Traceback (most recent call last):
File "test.py",line 3,in <module>
print(pygame.display.list_modes())
pygame.error: video system not initialized
但是,如果我激活 tox 命令运行的虚拟环境并手动运行相同的程序,它会按预期工作。我希望两个执行环境都相同。我做错了什么?
解决方法
为了解决这个问题,我需要添加一个
passenv = DISPLAY
到我的[testenv]
。
如上面的评论所述,tox
执行 isolated
构建,并且不会传入 ENVIRONMENT
变量,除非您将它们列入白名单。
我对 pygame
不是很熟悉,我只是快速浏览了一下源代码。
这适用于我的 Ubuntu 机器 - 也许您的设置不同。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。