Change current working directory with Python
Last Updated :
07 Sep, 2021
The OS module in Python is used for interacting with the operating system. This module comes under Python’s standard utility module so there is no need to install it externally. All functions in OS module raise OSError in the case of invalid or inaccessible file names and paths, or other arguments that have the correct type but are not accepted by the operating system.
To change the current working directory(CWD) os.chdir() method is used. This method changes the CWD to a specified path. It only takes a single argument as a new directory path.
Note: The current working directory is the folder in which the Python script is operating.
Syntax: os.chdir(path)
Parameters:
path: A complete path of the directory to be changed to the new directory path.
Returns: Doesn’t return any value
Example #1: We will first get the current working directory of the script and then we will change it. Below is the implementation.
Python3
import os
def current_path():
print ( "Current working directory before" )
print (os.getcwd())
print ()
current_path()
os.chdir( '../' )
current_path()
|
Output:
Current working directory before
C:\Users\Nikhil Aggarwal\Desktop\gfg
Current working directory after
C:\Users\Nikhil Aggarwal\Desktop
Example #2: Handling the errors while changing the directory.
Python3
import sys, os
cwd = os.getcwd()
fd = 'false_dir/temp'
try :
print ( "Inserting inside-" , os.getcwd())
os.chdir(fd)
except :
print ( "Something wrong with specified directory. Exception- " )
print (sys.exc_info())
finally :
print ()
print ( "Restoring the path" )
os.chdir(cwd)
print ( "Current directory is-" , os.getcwd())
|
Output:
Inserting inside- C:\Users\Nikhil Aggarwal\Desktop\gfg
Something wrong with specified directory. Exception-
(<class ‘FileNotFoundError’>, FileNotFoundError(2, ‘The system cannot find the path specified’), <traceback object at 0x00000268184630C8>)
Restoring the path
Current directory is- C:\Users\Nikhil Aggarwal\Desktop\gfg
Please Login to comment...