This is a quick reference sheet for working with files and directories using Python. Also, check how to import OS module for working with the operating system.

← GO BACK : Python basics: Functions

var_file = open("filename", "r") #open file for reading
var_file = open("filename", "w") #open file for writing and it is overwritten. If it does not exist, creates a file and opens it for writing.
var_file = open("filename", "r+") #open file for read/write
var_file = open("filename", "rb") #open binary file for reading
var_file = open("filename", "rb+") #open binary file for read/write, with pointer at beginning of file
var_file = open("filename", "wb") #open binary file for writing
var_file = open("filename", "wb+") #open binary file for read/write
var_file = open("filename", "a") #open file for appending
var_file = open("filename", "a+") #open file for read/append
var_file = open("filename", "ab+") #open binary file for read/append
var_file.write( "line1.\nLine2\nLine3") #write to an opened file
var_file.close() #close an opened file

Python has different modules that can be imported and used, such as the ‘math’ module for arithmatic operations and ‘OS’ module for working with operating system and so on.

import os								#import OS module

os.rename(filename, filename_new) #rename a file 
os.path.exists("filename_new") #check if path exists
os.remove(file_name) #delete a file
os.getcwd() #Get current working directory
os.chdir("newdir") #change directory
os.mkdir("newdir") #make new directory
os.system("uname -a") #run shell commands
os.listdir('/home/UnixUtils')                 

In this example Lets check our current directory, create a new one and change to it and try our file operations in it.

 import os
 os.getcwd()

'/home/UnixUtils'

 os.mkdir("testdir1")
 os.chdir("testdir1")
 os.getcwd()

'/home/UnixUtils/testdir1'

 
 os.path.exists("./testfile")

False

 var_f=open("testfile","w")
 var_f.write("This is written with python")
 var_f.close()
 with open("testfile","r") as contents:
     content=contents.read()
 print content

This is written with python

 os.rename('testfile','testfile_new')
 arr = os.listdir('.')
 print arr

['testfile_new']

 
 os.system("ls -l")

 total 4
-rw-rw-r--. 1 unixutils unixutils 27 Dec  2 18:22 testfile_new
0

 os.remove('testfile_new')
 os.system("ls -l")

total 0
0