<p>How do I copy a file in Python?</p>

```
shutil
```
has many methods you can use. One of which is:
```
```
import shutil

shutil.copyfile(src, dst)

# 2nd option
shutil.copy(src, dst)  # dst can be a folder; use shutil.copy2() to preserve timestamp
```
```
Copy the contents of the file named
```
src
```
to a file named
```
dst
```
. Both
```
src
```
and
```
dst
```
need to be the entire filename of the files, including path.
The destination location must be writable; otherwise, an
```
IOError
```
exception will be raised.
If
```
dst
```
already exists, it will be replaced.
Special files such as character or block devices and pipes cannot be copied with this function.
With
```
copy
```
,
```
src
```
and
```
dst
```
are path names given as
```
str
```
s.
Another
```
shutil
```
method to look at is
```
shutil.copy2()
```
. It's similar but preserves more metadata (e.g. time stamps).
If you use
```
os.path
```
operations, use
```
copy
```
rather than
```
copyfile
```
.
```
copyfile
```
will only accept strings.