Skip to content
Related Articles

Related Articles

Improve Article
Save Article
Like Article

How to copy file in Python3?

  • Last Updated : 02 Dec, 2020

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.

 Attention geek! Strengthen your foundations with the Python Programming Foundation Course and learn the basics.  

To begin with, your interview preparations Enhance your Data Structures concepts with the Python DS Course. And to begin with your Machine Learning Journey, join the Machine Learning - Basic Level Course

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 Folder

Method 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 file

Program:

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 File




My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!