有没有一种方法可以将打印输出导出为txt。 python中的文件?

时间:2020-09-30 15:00:56

标签: python python-3.x string

在使用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 个答案:

答案 0 :(得分:1)

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

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)

答案 1 :(得分:0)

取决于您希望该程序执行的操作,您可以只通过命令行传递输出(类似python3 my_program.py > output.txt之类),也可以通过python本身打开并写入文件:

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