Чтение цветов из файла конфигурации с помощью ConfigParser для использования с Pygame - PullRequest
1 голос
/ 28 апреля 2010

В файле конфигурации у меня есть переменная, определенная как

BackgroundColor = 0,0,0

Который должен работать для настроек screen.fill для Pygame или любого цветового аргумента в этом отношении. Где я могу просто сделать screen.fill(0,0,0)

Проблема, с которой я думаю, заключается в том, что для целых чисел, прочитанных через configfile, я должен поставить int(), чтобы преобразовать строку в int. Для чего-то вроде colors int не работает, и я понятия не имею, что следует использовать.

TypeError: invalid color argument

Это ошибка Python.

1 Ответ

2 голосов
/ 28 апреля 2010

У вас есть строка, представляющая цвет, например, '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(',')]
...