moving a file in python using shutil

csciBeginner picture csciBeginner · Jul 19, 2016 · Viewed 7.6k times · Source

I know there have been some posts on how to move a file in python but I am a little confused. I am working on a program that has a file called test.txt

The file path is this: C:\Users\user\Desktop\Project1\Project1
I want to move it to: C:\Users\user\Documents\ProjectMoved
I tried different variations of what I have below

src="C:\\Users\\user\\Desktop\\Project1\\Project1\\test.txt"
dst="C:\\Users\\user\\Documents\\ProjectMoved"
shutil.move(src, dst)

I keep getting the error no such file in directory.

I was wondering if someone could help me out with the correct way to move the file.

Answer

p-robot picture p-robot · Jul 19, 2016

Might be worth checking the file exists and then trying to specify paths using os.path.join:

import shutil
import os
from os.path import join

src = join('/', 'Users', 'username', 'Desktop', 'a.pdf')
dst = join('/', 'Users', 'username', 'Documents', 'a.pdf')

shutil.move(src, dst)

You can first verify if the src actually exists:

os.path.exists(src)
>>> True