python - 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__
?
解决方案
试试下面的代码
if os.path.getsize("game_data.txt") != 0:
with open("game_data.txt"), "r") as f:
XP = int(float(f.readline()))
else:
XP = 0
推荐阅读
- php - 使用 php 对所有学生取一门学科的平均值
- amazon-web-services - GCP for AWS lambda 中对应的云函数
- python - 如何成功显示从数组中提取的这个 PNG 图像?(对PIL的理解差)
- javascript - 如何将表行值注入两个单独的表
- android - 如何为multiautocompletetextview预定义值在android中不起作用
- mysql - 带有 GROUP WITH ROLLUP 的 SUM - 查询太慢
- reactjs - 在同一浏览器中使用 OAuth2 运行反应应用程序的两个实例
- javascript - 修改jQuery中的第二次点击动作
- amazon-web-services - 如何在 AWS SAM 状态机定义中使用多行参数?
- r - 如何合并“日期”和“时间”列以获得“POSIXct 格式”的单列