Python Directories
The os (operating system) module represents operating system dependent functionality. This module is useful to perform some simple operations on directories. Let's assume we are working with the following directory path: F:\py\enum And we are currently in the directory F:\py where we are running our programs. If we want to know the currently working directory, we can use getcwd() method of 'os' module as shown in Program.
A Python program to know the currently working directory.
import os #get current working directory current = os.getcwd() print('Current directory=', current)
If we want to create our own directory in the present directory, we can use the mkdir() method. This method can be used as:
os.mkdir('mysub')
This will create mysub in the present directory. Suppose, we write the following statement:
os.mkdir('mysub/mysub2')
This will create mysub2 in the mysub directory.
A Python program to create a sub directory and then sub-sub directory in the current directory.
import os #create a sub directory by the name mysub os.mkdir('mysub') #create a sub-sub directory by the name mysub2 os.mkdir('mysub/mysub2')
A Python program to use the makedirs() function to create sub and sub-sub directories.
import os #create sub and sub-sub directories os.makedirs('newsub/newsub2')
We can change our current working directory to another existing directory. For this purpose, we can use chdir() method. For example, if we want to change our directory to newsub2 which is in newsub, we can use chdir() method as:
goto = os.chdir('newsub/newsub2')
Here, our assumption is that newsub is in the current directory and newsub contains newsub2. After executing the preceding statement, our current working directory will be newsub2.
A Python program to change to another directory.
import os #change to newsub2 directory goto = os.chdir('newsub/newsub2') #get current working directory current = os.getcwd() print('Current directory=', current)
To remove a directory, we can use rmdir() method of 'os' module. Let's suppose, our current directory is F:\py. In this, we have newsub directory and inside newsub, we have newsub2 directory. To remove newsub directory, we can write:
os.rmdir('newsub')
The rmdir() method will remove newsub since it is found in the current directory. Suppose, we write the following statement:
os.rmdir('newsub2')
This cannot remove newsub2 as it is not in the current directory. newsub2 is inside newsub that is in the current directory. In this case, path should be given properly as:
os.rmdir('newsub/newsub2')
This will remove the newsub2 directory.
A Python program to remove a sub directory that is inside another directory.
import os #to remove newsub2 directory os.rmdir('newsub/newsub2')
A Python program to remove all sub directories that is inside directory.
import os #removes all sub folders in a directory os. removedirs('Naveen/mysub2/New folder')
A Python program to display all contents of the current directory.
import os for dirpath, dirnames, filenames in os.walk('.'): print('Current path:', dirpath) print('Directories:', dirnames) print('Files:', filenames) print()