提问者:小点点

是否有办法将打印输出导出为txt。python中的文件?[副本]


在玩Python时,我想出了一个简单的超市模拟器,在那里我对商品及其价格进行了编目。

N=int(input("Number of items: "))
n1=0
name1=str(input("Product: "))
price1=float(input("Price: "))
price1="%.2f $" % (price1)
n=n1+1
item1=f"{n}.{name1}---{price1}"
table=[]
table.append(item1)
while n<N:
    name=str(input("Product: "))
    price=float(input("Price: "))
    price="%.2f $" % (price)
    n=n+1
    item=f"{n}.{name}---{price}"
    table.append(item)
for x in range(len(table)):
        print (table[x])

输入

Number of items: 3
Product: Milk
Price: 5
Product: Water
Price: 1
Product: Apple
Price: 3.49

对于输出

1.Milk---5.00 $
2.Water---1.00 $
3.Apple---3.49 $

我想把打印输出导出为txt。文件,以便在另一个项目中使用。


共2个答案

匿名用户

您可以使用以下代码片段打印到文件而不是标准输出:

with open('out.txt', 'w') as f:
    print('Some text', file=f)

因此,在您的特定情况下,您可以按以下方式编辑输出循环以打印到文件out.txt:

with open('out.txt', 'w') as f:
    for x in range(len(table)):
        print (table[x], file = f)

匿名用户

根据您希望该程序执行的操作,您可以通过管道从命令行输出(类似于python3 my_program.py)

with open("output.txt", "w") as outfile:
    for x in range(len(table)):
        outfile.write(table[x] + "\n")