【问题标题】:Print results to .txt [duplicate]将结果打印到 .txt [重复]
【发布时间】:2021-03-18 06:48:40
【问题描述】:

将此数学计算的结果打印到 .txt 等文档的最佳方法是什么? 我做错了什么?

def divide(x, y):
    return x / y

print("Menu.")
print("1.Offers")

while True:
    choice = input("Choose1(1): ")

    if choice in ('1'):
        num1 = float(input("Price: "))
        num2 = float(input("Surcharge: "))

        if choice == '1':
            print(num1, "/", num2, "==", divide(num1, num2))
        break
    else:
        print("Invalid Input")

【问题讨论】:

  • 我编辑了问题以修复代码格式,包括缩进。只是提到我错了。

标签: python


【解决方案1】:

试试这个:

with open("f.txt", 'w') as f:
    f.write(str(num1)+"/"+str(num2)+"="+str(divide(num1, num2)))

【讨论】:

    【解决方案2】:

    你根本不写文件。

    下面的语法来保存你的结果。

    def divide(x, y):
      return x / y
    
    print("Menu.")
    print("1.Offers")
    
    while True:
    
      choice = input("Choose1(1): ")
    
      if choice in ('1'):
        num1 = float(input("Price: "))
        num2 = float(input("Surcharge: "))
    
        if choice == '1':
            print(str(num1)+"/"+str(num2)+"="+str(divide(num1, num2)))
            
            with open("output.txt", "w") as msg:
                msg.write(str(num1)+"/"+str(num2)+"="+str(divide(num1, num2)))
                msg.close()
        break
      else:
        print("Invalid Input")
    

    【讨论】:

    • 顺便说一句,使用 with open(...) as msg: link 时您不需要 msg.close()
    • 谢谢。你有一个参考/链接吗?我承认,当我不确定时,我倾向于收拾东西;)
    • @Synthase Ref: Reading and Writing Files - Python Tutorial: "在处理文件对象时最好使用with 关键字。优点是文件在其套件完成后正确关闭,即使在某个时候引发了异常。”
    • 如果使用print(file=msg),则不需要手动进行字符串转换和加入。 print(num1, "/", num2, "==", divide(num1, num2), file=msg)
    • 谢谢合成酶!
    猜你喜欢
    • 2014-09-03
    • 1970-01-01
    • 2021-03-19
    • 2014-04-01
    • 2016-10-31
    • 1970-01-01
    • 2016-02-29
    • 1970-01-01
    • 2011-06-25
    相关资源
    最近更新 更多