Last Updated : 23 Jul, 2025
Prerequisites: Shutil
When we require a backup of data, we usually make a copy of that file. Python supports file handling and allows users to handle files i.e., to read and write files, along with many other file handling options, to operate on files. Here we will learn how to copy a file using Python3.
Method 1 : Using shutil library
shutil library includes a method call copyfile(). The method takes two parameters, one is source path of file and other is destination path of file. The following image includes a file with its path.
Syntax:
copyfile(source_path,destination_path)Source Path of File
Program:
Python3
# copy a file using shutil.copyfile() method
import shutil
# path where original file is located
sourcePath = "c:\\SourceFolder\\gfg.txt"
# path were a copy of file is needed
destinationPath = "c:\\DestinationFolder\\gfgcopy.txt"
# call copyfile() method
shutil.copyfile(sourcePath, destinationPath)
Output:
Destination FolderMethod 2 : copying data of file into another file
Copying data of one file to another file could also create a backup of file. Suppose the data of file is as below:
Data in source fileProgram:
Python3
# open source file in read mode
source = open("c:\\SourceFolder\\gfg.txt", "r")
# open destination file in write mode
dest = open("c:\\DestinationFolder\\gfgcopy.txt", "w")
# read first line
line = source.readline()
# read lines until reached EOF
while line:
# write line into destination file
dest.write(line)
# read another line
line = source.readline()
# close both files
source.close()
dest.close()
Output:
Destination FileRetroSearch 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