在python中的字典上使用join()将键值对作为一个长字符串返回

问题描述 投票:0回答:3

我希望join()键和值对在我的词典中使用:。我想把它全部作为一个字符串返回。

直觉上我希望只是插入字典才能工作:

def format_grades(grades):


    return ': '.join(grades) + "\n" 

我尝试过像这样的': '.join(str(n) for n in grades[n])将我的值转换为字符串,因为我的字典看起来像这样:{john: 2}但我现在想不出来,想法?

python python-3.x string dictionary
3个回答
1
投票

在python3中使用f-strings - 你可以遍历dict中的项目并在新行上打印每个项目。

print("\n".join(f'{k}: {v}' for k,v in grades.items()))

例:

grades = {'john': 2, 'marry': 4}
print("\n".join(f'{k}: {v}' for k,v in grades.items()))

输出:

john: 2
marry: 4

1
投票
def format_grades(grades):

return ( "\n".join([str(i[0])+":"+str(i[1]) for i in grades.items()]) )

0
投票

您可以迭代键和值,并通过连接它们来创建字符串

grades = {'Joe':'A','John':'B'}
print(" ".join('{}: {}'.format(k,v) for k,v in grades.items()))
#Joe: A John: B
© www.soinside.com 2019 - 2024. All rights reserved.