将字典转换为字符串

新手上路,请多包涵
d={'a':'Apple','b':'ball','c':'cat'}

我有上面的字典,我希望我的输出像下面提到的结果

res="a=Apple,b=ball,c=cat"

是否有可能以 pythonic 方式然后请回答我已经尝试了各种方法但没有得到所需的输出?

原文由 Samresh Kumar Jha 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 605
2 个回答

以键/值对( dict.items() )的形式阅读你的字典,然后将它们格式化为你喜欢的字符串:

 d = {'a': 'Apple', 'b': 'ball', 'c': 'cat'}

res = ",".join("{}={}".format(*i) for i in d.items())  # a=Apple,c=cat,b=ball

但是,无法保证 dict 的顺序,如果顺序很重要,请使用 collections.OrderedDict()

原文由 zwer 发布,翻译遵循 CC BY-SA 4.0 许可协议

一种方法是通过 dict.items 进行迭代并使用多个 str.join 调用。

 d = {'a':'Apple','b':'ball','c':'cat'}

res = ','.join(['='.join(i) for i in d.items()])

# 'a=Apple,b=ball,c=cat'

如果您需要按键订购的物品,请使用 sorted(d.items())

原文由 jpp 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题