将用户指定的数字添加到文件中已有的数字。(Python)

2024-09-25 08:39:22 发布

您现在位置:Python中文网/ 问答频道 /正文

我知道这可能是一个愚蠢的问题,但我似乎不能真正做到这一点。你知道吗

我试着这么做:

f = open("txtfiles/c.txt", "r")
c = f.read()
int(c)
ca = float(input("Enter Cash to Add: "))
int(ca)
cn= c+ca
print (cn)

我试着说他们都是浮点数,这样他们就可以被正确地添加,因为我需要用户能够添加小数,但每当我这样做,我得到 TypeError:无法将“float”对象隐式转换为str

我在网上搜索过,我看到这个错误出现了,但实际上似乎没有任何帮助。你知道吗

很抱歉问你这个问题,但如有任何建议,我们将不胜感激。你知道吗


Tags: totxtaddreadinputcashopencn
2条回答

怎么样

with open("txtfiles/c.txt", "rU") as f:
    cn=float(f.read())+float(raw_input("Enter Cash to Add: "))
    print(cn)

使用^{}将在块退出时自动关闭文件,这样您就不会意外地将其打开。使用'rU'作为文件模式将为您处理newline madness。你知道吗

当您执行int(c)时,这将从字符串c生成一个整数,但您不会将它赋给任何对象。在您的情况下c仍然是一个字符串。将该行更改为:

    c = int(c)

更妙的是,既然你也想得到小数点,为什么不直接使用浮点和跳过整数转换呢?你知道吗

    f = open("txtfiles/c.txt", "r")
    c = float(f.read())
    ca = float(input("Enter Cash to Add: "))
    cn = c + ca
    print cn

相关问题 更多 >