小编tan*_*llo的帖子

如何在Python中抑制控制台输出?

我正在使用Pygame/SDL的操纵杆模块从游戏手柄获取输入.每当我调用它的get_hat()方法时,它就会打印到控制台.这是有问题的,因为我使用控制台来帮助我调试,现在它SDL_JoystickGetHat value:0:每秒被淹没60次.有没有办法可以禁用它?通过Pygame/SDL中的选项或在函数调用时抑制控制台输出?我在Pygame文档中没有提到这一点.

编辑:原来是由于在编译SDL库时打开了调试.

python pygame sdl

28
推荐指数
5
解决办法
5万
查看次数

最简单的旋转矩形的方法

我正在使用根据xy坐标及其宽度和高度定义的矩形.我想出了如何用坐标(x = cos(deg) * x - sin(deg) * y y = sin(deg) * x + cos(deg) * y)来旋转它们但是我被卡在高度和宽度上.我确信有一个明显的解决方案我不知道.如果重要,我正在使用Python.

编辑抱歉这个令人困惑的描述.我的目的是通过任何角度来使宽度和高度反转或取消.例如,在90度旋转中,值将切换.在180度旋转中,宽度将为负.另外,我只打算在我的脚本中使用90的倍数.我可以只使用if语句,但我认为会有更"优雅"的方法.

math geometry

7
推荐指数
2
解决办法
2万
查看次数

在Python中重现随机生成的级别最简单的方法是什么?

我正在制作一个使用程序生成级别的游戏,当我测试时,我经常想重现一个级别.现在我还没有采取任何方法来保存关卡,但我认为更简单的解决方案就是重用Python随机模块使用的种子.但是我尝试过使用两者random.seed()并且random.setstate()似乎都不能可靠地重现结果.奇怪的是,如果我重复使用种子,我有时会连续几次获得相同的水平,但它永远不会完全100%可靠.我应该正常保存级别(作为包含其信息的文件)吗?

编辑:

感谢大家的帮助.事实证明,我的问题来自于我在Pygame中从组中随机选择精灵,这些精灵是在无序的字典视图中检索的.我改变了我的代码以避免使用Pygame的sprite组来完成该部分,现在它完美地工作了.

python random pygame

3
推荐指数
1
解决办法
1662
查看次数

标签 统计

pygame ×2

python ×2

geometry ×1

math ×1

random ×1

sdl ×1