在输出文件中列出项目和价格

Listing items and prices in a output file

我正在为 运行 预算计算器制作一个简单的 python 脚本,但是当我走到最后时,我尝试输出一个文本文件。

我所有的计算都很好,但是当我将其导出到文本文件时,它只输出第一项。

例如:

输入:

5 件商品,每件 1 美元,名称从 1 开始递增。

输出:

项目:1

价格:1

剩余资金:0

更新的代码:

print('You have listed all items, your leftover money is',budget,'dollars!')
for item, price in zip(item_list, price_list):
    file.write(f'\nItem: {item}\nPrice: {price}\n')
file.write("Leftover Money: "+str(budget))
file.close()
quit()

我试着查找它,但我得到的只是不同情况下的主要不同代码。这首先是作为索引越界开始的,但我设法解决了这个问题,但却得到了这个。

有什么想法吗?

for i in item_list 不是 return 项目索引,而是项目本身!

my_list = ["first", "second", "third"]

for item in my_list:
   print(item)

版画

first
second
third

如果你想要索引本身,你可以使用enumerate。请参阅下面的示例...

my_list = ["first", "second", "third"]

for idx, item in enumerate(my_list):
   print(f"{idx} {item}")
   assert item == my_list[idx]

版画

0 first
1 second
2 third

你不需要在 for of 循环中使用索引你可以这样写

str(i)

而不是

str(item_list[i]))

for i in item_list 遍历列表的项目,它恰好包含字符串类型的项目(如您的错误所示),如果要遍历项目,请使用:

for item in item_list:
    print(item)
    print(type(item))

如果除了迭代项之外,还需要索引,请使用:

for i, item in enumerate(item_list):
    print(i)
    print(type(i))
    print(item)
    print(type(item))