python 3.如何在文件中添加或更改数据



你好,我已经做了一个程序,存储球员的名字和实力,下面是代码:

data = {
    "PLAYER":name2,
    "STRENGTH":str(round(strength, 2)),
}

with open("data2.txt", "w", encoding="utf-8") as file:
   file.write(repr(data))
file.close()

这存储了数据那么如果我想在某个动作之后附加/改变值,比如'BATTLE',我该怎么做呢

是否有可能得到'STRENGTH'的变量,然后改变数字?

现在从外部文件'DATA1.txt'读取数据,我使用以下代码:

with open("data1.txt", "r", encoding="utf-8") as file:
   data_string = file.readline()
   data = eval(data_string)
   # (data["STRENGTH"])
   S1 = (float(data["STRENGTH"]))
file.close()

现在我可以对变量-> 'S1'做一些事情

这是外部文本文件'data1.txt'

{'PLAYER': 'Oreo', 'STRENGTH': '11.75'}

…但是我想在"战斗"后改变强度值,谢谢

也许你不理解Python字典的语义?

在我看来,当你可以做非常简单的事情时,你做了很多不必要的事情,比如S1 = (float(data['STRENGTH'])),试图操纵和改变值。

>>> data = {'PLAYER': 'Oreo', 'STRENGTH': '11.75'}
>>> data['STRENGTH'] = float(data['STRENGTH'])
>>> data
{'PLAYER': 'Oreo', 'STRENGTH': 11.75}
>>> data['STRENGTH'] += 1
>>> data
{'PLAYER': 'Oreo', 'STRENGTH': 12.75}

也许你应该给原生数据类型——潜入Python 3一个读,看看它是否澄清了事情。

相关内容

  • 没有找到相关文章