首页 > 解决方案 > Python 如何读取()并转换为 __int__

问题描述

我有一个文本文件,其中包含播放器的 XP。每次比赛开始时:

if os.path.getsize("game_data.txt") != 0:
    with open("game_data.txt"), "r") as f:
        XP = f.readline()
else:
     XP = 0

, 使播放器的 XP 设置为文件中的唯一项目。在文件的末尾(在 周围pygame.quit())它有以下代码:

with open("game_data.txt", "w") as f:
    f.write(str(XP))

但是,每当我尝试XP += (some number)在我的代码中执行操作时,我都会收到一个错误消息,指出它XP是一个字符串(因为我 .read() 始终是一个字符串),所以我不能将 += 与数字一起使用。有没有办法明确地将你转换成.read()什么__int__

标签: pythontext

解决方案


试试下面的代码

if os.path.getsize("game_data.txt") != 0:
    with open("game_data.txt"), "r") as f:
        XP = int(float(f.readline()))
else:
     XP = 0

推荐阅读