首页 > 解决方案 > 你如何将带有整数的元组(dict的键)转换为str列表

问题描述

在编写一些代码时,我陷入了必须将元组键从字典转换为字符串列表的部分。

dict = {(3,4):45, (4,5):6, (5,6):45} 

然后从 dict 中获取键并将它们转换为字符串列表,例如

['3,4', '4,5', '5,6'] 

你将如何处理这个功能。?我尝试使用 for 循环,但它不起作用。

for i in dict:
    lista = ','
    for x in i:
        lista.join(str(x))
        
return list(lista)

标签: pythonlistdictionaryfor-loop

解决方案


首先,不要覆盖 python 内置函数。使用有意义的变量名。例如data.

data = {(3,4):45, (4,5):6, (5,6):45}

第二个str.join返回连接的字符串。它不会就地执行它,尤其是因为字符串是不可变的。此外,它仅适用于字符串,因此您需要将ints 转换为str. 尝试以下列表理解:

result = [','.join(map(str, key)) for key in data]

结果:

['3,4', '4,5', '5,6']

上面的列表理解相当于:

result = []
for key in data:
    result.append(','.join(str(k) for k in key))

推荐阅读