MattyB-Raps Ответов: 1

Как исправить ошибку "индекс списка вне диапазона" в этом коде (Python)


Когда я запускаю этот код
f = open("save.txt", "r")
xp_levelup_save=f.readlines(3)
xp_levelup_save=[int(i.replace("\n", "")) for i in xp_levelup_save][2]
f.close()

Я получаю ошибку
Индекс списка вне диапазона

Если бы кто-нибудь мог сказать мне, почему и дать мне исправление, спасибо

Что я уже пробовал:

Я пробовал изменить файл, который он находит, и строка, которую он находит, первая строка в порядке
(readlines 1 и xp_levelup ... xp_levelup_save][0]
и
(прочитайте строки 2 и xp_levelup ... xp_levelup_save][1]
но когда дело доходит до строки 3 (Читайте строку 3 и [2])
он приходит с ошибкой

1 Ответов

Рейтинг:
2

Richard MacCutchan

Значение подсказки-это количество байтов, как описано в разделе 16.2. Ио — основные инструменты для работы с потоками — 3.3.7 документации Python [^].


MattyB-Raps

Я не уверен, что понимаю это, не могли бы вы объяснить это немного подробнее. Если у вас есть время

Richard MacCutchan

> readlines(подсказка=-1)
> прочитайте и верните список строк из потока. подсказка может быть задана для управления количеством прочитанных строк: больше никаких строк не будет прочитано, если общий размер (в байтах/символах) всех строк до сих пор превышает подсказку.

В вашем случае это означает, что он перестанет читать после трех символов.

Но я не совсем понимаю, что вы пытаетесь сделать.