我想创建一个设置文件,这样我的python脚本可以在重启后记住设置。我使用命令f.readline()
,但输出不同,给出了我读过的行数。
例如: 文本文件是
1
2
3
当我使用此脚本打印出信息时。
f = open("test.txt", "r")
print(f.readline(1))
print("-") #i used this to see if the output is blank since it will leave a empty space
print(f.readline(2))
print("-")
pirnt(f.readline(3))
print("-")
输出是:
-
1
-
-
2
-
有人可以解释我做错了什么或我如何改进它?
答案 0 :(得分:1)
readline
的签名采用您指定的可选 size 参数,但如果您打算逐行读取文件,则不需要该参数:
f.readline(1)
# ^ read 1 byte
该参数与您假设的行号不同义。
由于您确实打算逐行阅读,因此不应指定此大小参数:
f.readline() # reads one line at a time
空行将返回'\n'
,在文件末尾,您将有''
。
答案 1 :(得分:0)
readline
的参数不是您想要读取的行数,而是您希望的字节数。
要按行号访问文件,您可以使用readlines()
:
f = open("test.txt", "r")
lines = f.readlines()
print(lines[0])
print("-") #i used this to see if the output is blank since it will leave a empty space
print(lines[1])
print("-")
pirnt(lines[2])
print("-")
请注意readlines()
一次获取所有文件而不是逐行获取。有时这不是你真正想做的事情。