使用 ConfigParser 从配置文件中读取颜色以与 Pygame 一起使用

发布于 2024-08-30 04:19:33 字数 387 浏览 13 评论 0原文

在配置文件中,我将变量定义为

BackgroundColor = 0,0,0

Which should work for the screen.fill 设置 Pygame 或任何与此相关的颜色参数。我可以在哪里做 screen.fill(0,0,0)

我认为问题在于,对于通过 configfile 读取的整数,我必须输入 int() 将字符串转换为 int。对于像 color int 这样的东西不起作用,我不知道应该使用什么。

TypeError: invalid color argument

这是 python 的错误。

In the config file I have the variable defined as

BackgroundColor = 0,0,0

Which should work for the screen.fill settings for Pygame or any color argument for that matter. Where I can just do screen.fill(0,0,0)

The problem I think is with this is that for integers read through a configfile I have to put int() to convert the string to an int. For something like colors int doesnt work and I have no idea what should be used.

TypeError: invalid color argument

That's the error from python.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

女中豪杰 2024-09-06 04:19:33

您有一个代表颜色的字符串,例如'0,0,0'。使用 split(',') 将其拆分为单独的字段,然后转换每个字段。

例如,

color = '255, 255, 255'
red, green, blue = color.split(',')
red = int(red)
green = int(green)
blue = int(blue)

或者如果您想一步完成并且理解不会打扰您:

color = '128, 128, 128'
red, green, blue = [int(c) for c in color.split(',')]

You've got a string representing the color, e.g. '0,0,0'. Use split(',') to split it into separate fields, then convert each one.

e.g.

color = '255, 255, 255'
red, green, blue = color.split(',')
red = int(red)
green = int(green)
blue = int(blue)

Or if you want to do it in one step and the comprehensions don't bother you:

color = '128, 128, 128'
red, green, blue = [int(c) for c in color.split(',')]
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文