您可以使用literal_eval的的ast模块:
阿斯特。literal_eval(node_or_string)
安全地计算包含 Python 文字或容器显示的表达式节点或 Unicode 或 Latin-1 编码字符串。提供的字符串或节点只能由以下 Python 文字结构组成:字符串、数字、元组、列表、字典、布尔值和无。
例子:
>>> import ast
>>> ast.literal_eval("(255, 0, 0)")
(255, 0, 0)
>>>
Run Code Online (Sandbox Code Playgroud)
关于 pygame,请注意Color该类还可以将颜色的名称作为字符串:
>>> import pygame
>>> pygame.color.Color('RED')
(255, 0, 0, 255)
>>>
Run Code Online (Sandbox Code Playgroud)
所以也许你通常可以简化你的代码。
此外,您不应该命名您的dict Color,因为Colorpygame 中已经存在该类,这只会导致混淆。