gpt4 book ai didi

python - 不支持的操作数类型错误

转载 作者:行者123 更新时间:2023-12-03 08:11:31 24 4
gpt4 key购买 nike

(编辑)
我试图通过将以前的钱存到一个文件中来赚钱,以便您可以访问以前拥有的钱。但是,这给了我一个错误(请参阅标题)。请不要将其标记为重复项,因为我已经检查了其他项目,并且他们没有解决我的问题。这是我的代码:

 def piggybank():
newamount = 0.0
file = open('piggybank.txt','r+')
addedmoney = input('How much money are you adding?')
file.write(addedmoney + '\n')
for line in file:
newamount += line
print("You now have:\n", newamount)

基本上,我说的是新金额为0。然后,我以读写模式打开文件,并询问用户要添加多少。然后,将其添加到文件的新行中,并添加文件中的所有内容。最后,我打印总和。但是,这不起作用,因为我不断收到错误消息。请帮忙!

(我有点不熟悉Python和Stack Overflow,因为我13岁,才刚刚开始学习。)

这是我的新代码:
 def piggybank():
file = open('piggybank.txt','r+')
money = input('How much money are you adding?')
file.write(money + '\n')
for line in file:
money += line
print("You now have:\n", money)
file.close()

如果您看一下我的原始代码,我在money上添加了换行符,我也在这里做了。但是,它将货币字符串当作字符串来添加,因此如果您两次输入5.00,则会给出“5.005.00”。如果要打印数字而不是字符串,有人知道如何添加新行吗?

最佳答案

这是因为您的行是字符串,而newamount是数字。这就是为什么您得到错误。您必须先将字符串转换为数字,然后才能进行数学计算。

def piggybank():
newamount = 0.0
file = open('piggybank.txt', 'r+')
addedmoney = input('How much money are you adding?')
file.write(str(addedmoney) + '\n')
file.seek(0)
for line in file:
newamount += float(line)
print("You now have:\n", newamount)

关于python - 不支持的操作数类型错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42081393/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com