Search code examples
pythonlistreadlines

Add 1 word after readlines()


I am still learning python and have a question about the function readlines() The following is a part of my script:

f = open("demofile.txt", "r")
text = "".join(f.readlines())
print(text)

demofile.txt contains:

This is the first line
This is the second line
This is the third line

Now I want to add a single word to this so I get:

This is the first line
This is the second line
This is the third line
Example

I thought of something easy way of doing it:

f = open("demofile.txt", "r")
text = "".join(f.readlines())."Example"
print(text)

But that doesn't work (of course) I googled and looked around here but didn't really have the good keywords to search for this issue. Hopefully someone can point me in the right direction.


Solution

  • .readlines() returns list you can append() to it:

    with open("demofile.txt") as txt:
        lines = txt.readlines()
        lines.append("Example")
        text = "".join(lines)
        print(text)
    

    or you can unpack the file object txt, since its an iterator to a new list with the word you wanted to add:

    with open("demofile.txt") as txt:
        text = "".join([*txt, "Example"])
        print(text)