如何使用Python 3中的格式方法打印字符串列表中的项目

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

提供有关商店库存的数据列表,其中列表中的每个项目代表商品的名称,库存量以及成本。使用.format方法(不是字符串连接)以相同的格式打印列表中的每个项目。例如,第一个印刷声明应该是商店有12个鞋子,每个鞋子为29.99美元。

我将一个索引变量i初始化为0,并使用循环变量编写for循环以遍历列表中的内容。

然后我有一个打印声明,打印出“商店有{} {},每个都为{}美元。”利用格式方法填充括号的适当值。对于格式方法,我使用i作为索引变量来索引列表。然后,我将索引变量递增1,以进行下一个循环运行,直到循环遍历列表。

inventory = ["shoes, 12, 29.99", "shirts, 20, 9.99", "sweatpants, 25, 15.00", "scarves, 13, 7.75"]

i = 0

for item in inventory:
    print("The store has {} {}, each for {} USD.".format(inventory[i], inventory[i], inventory[i]))
    i += 1

预期的结果应该是 - The store has 12 shoes, each for 29.99 USD.

但是,我的代码写的方式,我得到 - The store has shoes, 12, 29.99 shoes, 12, 29.99, each for shoes, 12, 29.99 USD.

我不清楚在使用格式方法时如何正确索引,因为我正在使用字符串列表。我需要修正哪些索引正确?

python string list indexing format
1个回答
1
投票

你有一个字符串列表,你需要将它们分成字段:

for item in inventory:
    item_desc, number, cost = item.split(", ")
    print("The store has {} {}, each for {} USD.".format(item_desc, number, cost)
© www.soinside.com 2019 - 2024. All rights reserved.