Lets say you have a python file with 50 lines of code in it, and you want to read a specific range lines into a list. If you want to read ALL the lines in the file, you can just use the code from this answer:
with open('yourfile.py') as f:
content = f.readlines()
print(content)
But what if you want to read a specific range of lines, like reading line 23-27?
I tried this, but it doesn't work:
f.readlines(23:27)
If there are lots and lots of lines in your file, I believe you should consider using
f.readline()
(without ans
) 27 times, and only save your lines starting wherever you want. :)Else, the other ones solution is what I would have done too (meaning :
f.readlines()[23:28]
. 28, because as far as I remember, outer range is excluded.You were close.
readlines
returns a list and you can slice that, but it's invalid syntax to try and pass the slice directly in the function call.If the file is very large, avoid the memory overhead of reading the entire file:
Try this: