如何遍历字符串列表?Python购物列表打印问题求助
问题修复说明
你的代码问题出在两个地方:
- 嵌套循环导致重复输出:两层
for循环会把爸爸购物列表的每一项和以赛亚的每一项两两组合,所以会打印4×3=12次内容,这就是重复的原因。 - f-string语法错误:f-string需要用
{变量名}来解析变量,你写的[Dad]只会输出普通的方括号加字符串,不会读取变量值。
解决方案1:打印完整的购物清单(增删自动更新)
如果想一次性输出两个人的全部购物项,直接用join把列表转成自然的字符串,增删列表元素后,打印时会自动读取最新内容:
Dads_shopping_list = ["Body Wash", "Soda", "Water", "Candy Bar"] Izaiahs_shopping_list = ["Apples", "Wings", "Chips"] # 增删示例:给爸爸加个洗发水,删掉以赛亚的薯片 Dads_shopping_list.append("Shampoo") Izaiahs_shopping_list.remove("Chips") # 打印更新后的清单 print(f"Hey can you pick up {', '.join(Dads_shopping_list)} for Dad. And can you bring me back {', '.join(Izaiahs_shopping_list)}.")
运行后输出:
Hey can you pick up Body Wash, Soda, Water, Candy Bar, Shampoo for Dad. And can you bring me back Apples, Wings.
解决方案2:分条打印每个购物项
如果想逐条列出两个人的需求,分开循环即可,不要嵌套:
Dads_shopping_list = ["Body Wash", "Soda", "Water", "Candy Bar"] Izaiahs_shopping_list = ["Apples", "Wings", "Chips"] print("Dad's shopping list:") for item in Dads_shopping_list: print(f"- {item}") print("\nIzaiah's shopping list:") for item in Izaiahs_shopping_list: print(f"- {item}")
运行后输出:
Dad's shopping list: - Body Wash - Soda - Water - Candy Bar Izaiah's shopping list: - Apples - Wings - Chips
内容的提问来源于stack exchange,提问作者Doney Richardson
相关产品推荐
相关产品推荐

