A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://www.geeksforgeeks.org/python/python-append-to-a-file/ below:

Python append to a file

Python append to a file

Last Updated : 12 Jul, 2025

While reading or writing to a file, access mode governs the type of operations possible in the opened file. It refers to how the file will be used once it's opened. These modes also define the location of the File Handle in the file. The definition of these access modes is as follows:

These modes are ideal when you want to preserve existing content while adding more. Let's look at some examples:

Example 1: Append vs write mode. Python
# Write mode: overwrites the file
file1 = open("myfile.txt", "w")
L = ["This is Delhi \n", "This is Paris \n", "This is London"]
file1.writelines(L)
file1.close()

# Append mode: adds to the end of the file
file1 = open("myfile.txt", "a")
file1.write("Today \n")
file1.close()

# Reading file content
file1 = open("myfile.txt", "r")
print("Output after appending:")
print(file1.read())
file1.close()

# Write mode again: overwrites previous content
file1 = open("myfile.txt", "w")
file1.write("Tomorrow \n")
file1.close()

file1 = open("myfile.txt", "r")
print("Output after overwriting:")
print(file1.read())
file1.close()

Output:

Output of Readlines after appending
This is Delhi
This is Paris
This is LondonToday

Output of Readlines after writing


Tomorrow

Explanation:

Example 2:  Append from a New Line

In the above example of file handling, it can be seen that the data is not appended from the new line. This can be done by writing the newline '\n' character to the file. 

Python
# Initial file content
file1 = open("myfile.txt", "w")
L = ["This is Delhi \n", "This is Paris \n", "This is London"]
file1.writelines(L)
file1.close()

# Appending with and without newline
file1 = open("myfile.txt", "a")
file1.write("\n")        
file1.write("Today")    
file1.write("Tomorrow")  
file1.close()

# Read updated content
file1 = open("myfile.txt", "r")
print("Output after appending:")
print(file1.read())
file1.close()

Output:

Output of Readlines after appending
This is Delhi
This is Paris
This is London
TodayTomorrow

Explanation:

Note: ‘\n’ is treated as a special character of two bytes.

Example 3:  Using With statement  in Python

with statement is used in exception handling to make the code cleaner and much more readable. It simplifies the management of common resources like file streams. Unlike the above implementations, there is no need to call file.close() when using with statement.

Python
L = ["This is Delhi \n", "This is Paris \n", "This is London \n"]

# Writing to file
with open("myfile.txt", "w") as file1:
    file1.write("Hello \n")
    file1.writelines(L)

# Appending data
with open("myfile.txt", "a") as file1:
    file1.write("Today")

# Reading file
with open("myfile.txt", "r") as file1:
    print(file1.read())

Output:

Hello
This is Delhi
This is Paris
This is London
Today

Explanation:

Note: To know more about with statement click here.

Example 4: Appending File Content Using shutil

This approach uses the shutil.copyfileobj() method to append the contents of another file (source_file) to 'file.txt'. This can be useful if you want to append the contents of one file to another without having to read the contents into memory first.

Python
import shutil

# Open destination file in append-binary mode
with open("file.txt", "ab") as dest:
    # Open source file in read-binary mode
    with open("source_file.txt", "rb") as src:
        shutil.copyfileobj(src, dest)

Explanation:

Related article: File Handling in Python



RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4