Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/305.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 将字符串列表更改为整数列表的正确方法_Python_List_Dictionary - Fatal编程技术网

Python 将字符串列表更改为整数列表的正确方法

Python 将字符串列表更改为整数列表的正确方法,python,list,dictionary,Python,List,Dictionary,输出: dict = {0: ['2', '6'], 1: ['2'], 2: ['3']} print("Original: ") print(dict) for key,vals in dict.items(): vals = [int(s) for s in vals] print("New: ") print(dict) 我不明白为什么值列表没有改变,我尝试了map()函数,但它也不起作用,有什么原因吗?因为您没有覆盖字典中的实际值。试着做: Original: {0:

输出:

dict = {0: ['2', '6'], 1: ['2'], 2: ['3']}

print("Original: ")
print(dict)

for key,vals in dict.items():
    vals = [int(s) for s in vals]

print("New: ")
print(dict)

我不明白为什么值列表没有改变,我尝试了map()函数,但它也不起作用,有什么原因吗?

因为您没有覆盖字典中的实际值。试着做:

Original: 
{0: ['2', '6'], 1: ['2'], 2: ['3']}
New: 
{0: ['2', '6'], 1: ['2'], 2: ['3']}
事实上,通过听写理解,它看起来好多了。我只是想说明应该在代码中更改哪些内容。

在Python 3中:

for key,vals in dict.items():
    dict[key] = [int(s) for s in vals]

在第一行,我想是Python2,您犯了一个错误。对于d.items()中的k,v,您应该将其更改为类似于dict((k,list(map(int,v))),因为Python2不支持dict generatorI正在考虑将其后端口化的Python2.7。我完全删除了第一行,因为标记有
python
,而最新的版本应该是python3。
dict = {k: list(map(int, v)) for k, v in dict.items()}