当我运行此代码时
f = open("test.txt", "r")
xp_levelup_save=f.readlines(3)
xp_levelup_save=[int(i.replace("\n", "")) for i in xp_levelup_save][2]
f.close()
print (xp_levelup_save)
但是出现错误"列表索引超出范围"如果readlines是2并且[2]是[1]它可以正常工作。不知道为什么会这样。任何人都可以帮助我找到解决方法。我曾尝试过多次讨论但没有讨论 似乎使用此代码。 我的文本文档看起来像这样
1
2
3
4
5
6
答案 0 :(得分:0)
f.readlines()
不需要参数来检索文档的行。如果你提供像f.readlines(n)
这样的可选参数,Python会将其读作“期望n个字节并完成该行”。根据您的文本文件,这可能是一行,两行甚至更多行。
要阅读文本文件,只需使用
即可xp_levelup_save = f.readlines()
#resume with your code
其中每一行都存储为变量xp_levelup_save
中的字符串列表元素。
或者只是
xp_levelup_save = [int(i.replace("\n", "")) for i in f.readlines()][2]