将关键字:字符串列表转换为关键字:字典中的整数列表



我有一个键:列表对的字典。列表是字符串的列表,但它们必须是整数。下面是我开始的一个例子:

dictionary = {
    "P4021a": ["1","2","3","4","5"],
    "P4019a": ["1","2","3","4","5"],
    "P4013a": ["1","2","3","4","5"]
}

我正在努力实现以下目标:

dictionary = {
    "P4021a": [1,2,3,4,5],
    "P4019a": [1,2,3,4,5],
    "P4013a": [1,2,3,4,5]
}

以下是我迄今为止所尝试的:

new_dict = {}
for key in dictionary.keys():
    new_dict[key] = dictionary[int(key)]

我收到一个错误,说明int((不能对列表进行操作。因此,我还尝试在每个列表中添加迭代。

new_dict = {}
for key in dictionary.keys():
    new_dict[key] = dictionary[[int(value) for value in dictionary.values() for i in range(5)]]

我也试过:

new_dict = {}
for key in dictionary.keys():
    new_dict[key] = dictionary[map(int,key)]

感谢您的帮助。

for i in dictionary:
    dictionary[i]=map(int,dictionary[i])
print dictionary

您可以简单地从mapint

Bhargav指出,在Python3中,map返回map object而不是list,因此需要使用

list(map(int,dictionary[i]))
for key in dictionary:
    dictionary[key] = [int(val) for val in dictionary[key]]

最新更新