python - Python3 中的字典帮助

标签 python dictionary

我正在尝试打印列表的格式化布局。我已经记下了主要部分,但我似乎无法正确编号。

代码如下:

shopping_list = {"eggs": "$2", "milk": "$3.50", "cereal": "$3"}

my_shopping_list = "".join(**n**+". "+item+" "+shopping_list[item]+"\n" for item in shopping_list)

print(my_shopping_list)

基本上我想以以下格式打印商品和价格:

{数字}。 {商品} {价格}\n

所以结果应该是:

1. eggs $2
2. milk $3.50
3. cereal $3

如果我向字典中添加更多项目,它应该可以工作

但我不知道用什么替换n:

**n**+". "+item+" "+shopping_list[item]+"\n" for item in shopping_list

我尝试过使用列表来执行此操作

shopping_list = [["eggs", "$2"], ["milk", "$3.50"], ["cereal", "$3"]]

my_shopping_list = "".join(str(n+1)+". "+shopping_list[n][0]+" "+shopping_list[n][1]+"\n" for n in range(len(shopping_list)))

print(my_shopping_list)

它工作得很好,但我需要它为字典工作,所以我是否找到一种方法来像列表一样索引字典,或者有更好的方法吗?

提前致谢!

最佳答案

你几乎是对的。您可以调整代码以使用 dict.items()

my_shopping_list = "".join(str(i+1)+". "+ k + " "+ v +"\n" for i, (k,v) in enumerate(shopping_list.items()))

但我建议使用 str 格式,并使用 \n 加入

print("\n".join('{}. {} {}'.format(i, k, v) \
      for i, (k,v) in enumerate(shopping_list.items())))

关于python - Python3 中的字典帮助,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51543545/

相关文章:

python - 如何在 python 和 Robot-framework 中对字典进行切片?

python - 从最小值开始对嵌套字典中的值进行排序。至最大

python - 模块无法加载,仅标题发生变化(pygame)

python - 合并 Pandas 数据框列表

python - 将 Pandas 数据框转换为字典会用空格重命名列标题

Python-将元组值添加到字典中的重复键

python - 如何将目录树输出为 HTML?

python - 如何从 gensim 打印 LDA 主题模型? Python

python - 如何在不暴露密码的情况下使用 Python 发送电子邮件?

python - 检查值在元组列表中的位置