我有一个字典,其中的键是字符串列表(是数字),如下所示:
mydict = {'green': ['-1', '0'],
'orange': ['-1', '0', '9'],
'red': ['-1', '0'],
'yellow': ['0'],
'white': ['-1'],
'black': ['-1'],
'pink': ['-1']}
现在我想将值转换为整数,这样:
mydict = {'green': [-1, 0],
'orange': [-1, 0, 9],
'red': [-1, 0],
'yellow': [0],
'white': [-1],
'black': [-1],
'pink': [-1]}
我试过使用列表理解
mydict_int =dict((k,int(v)) for k,v in mydict.items())
但是它抛出一个错误:
TypeError: int() argument must be a string, a bytes-like object or a number, not 'list'
请您参考如下方法:
您不能直接将列表转换为 int,但您可以使用列表推导式单独转换它们的元素:
mydict_int = dict((k, [int(s) for s in v]) for k,v in mydict.items())
