python中的open方法不允许我将字符串转换为int

发布于 2022-07-28 23:05:16

当我尝试运行这行代码时会发生奇怪的事情:

        with open("snake score.txt", mode="r") as f:
            self.high_score = int(f.read())

它给了我:

  File "C:\Users\Lidor\PycharmProjects\100DaysOfCode\snake.py", line 77, in __init__
    self.high_score = int(f.read())
ValueError: invalid literal for int() with base 10: ''

文本中的文本是数字 0。有人可以告诉我如何修复这个错误吗?

在此处输入图像描述

关注者
0
被浏览
43
1 个回答
  • 面试哥
    面试哥 2022-07-28
    为面试而生,有面试问题,就找面试哥。

    确保字符串中没有多余的空格。

    self.high_score = int(f.read().strip())
    

    如果文件中有一个空的空格/空格字符“”,则 Python 无法读取文件名并对其进行处理。使用该strip()方法,您可以从代码中删除空格并继续。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看