How to copy files
copy, file, file-copying, filesystems, python
Solution
`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.
Problem
How do I copy a file in Python?