我有这个代码:
self.statusIcons = collections.OrderedDict
for index in guiConfig.STATUS_ICON_SETS:
self.statusIcons[index] = {condition:\
wx.Image(guiConfig.STATUS_ICON_STRING.format(index, condition),wx.BITMAP_TYPE_PNG).ConvertToBitmap() \
for condition in guiConfig.STATUS_ICON_CONDITIONS}
它设置了 wx.Image 对象的常规字典的有序字典,这些字典是通过理解设置的。我最初有嵌套的 dict 理解,它工作得很好,但我决定需要对顶级 dict 进行排序,所以最终以这种方式结束。问题是现在我收到此错误:
TypeError: 'type' object does not support item assignment
归零有问题的代码。我无法弄清楚我做错了什么。即使它不是顶级的,ordereddict 是否也不允许理解?也许它试图对有序字典中的所有字典进行排序而不能因为理解处于较低级别?不确定,也许这是因为隧道视觉我无法发现的荒谬。
PS:如果您需要知道我上面引用的全局变量中的内容:
STATUS_ICON_SETS = ("comp", "net", "serv", "audio", "sec", "ups", "zwave", "stats")
STATUS_ICON_CONDITIONS = ("on", "off")
STATUS_ICON_STRING = "images/{0}_{1}.png"