The os Module
Reference: https://docs.python.org/3/library/os.html.
Use the os module perform command-line-style file and directory operations, and to access system environment variables.
NOTE: On Windows, the filepaths may need different slashes (i.e.
\vs./). To mitigate this difference, we'll ideally follow the techniques suggested in the "Constructing Filepaths" section, to make filepaths that will work on any operating system.
Directory Operations
Detect the path of the current working directory (in scripts, this reflects the dir from which the command is being run):
os.getcwd() #> '/Users/mjr/Desktop/my-dir'In scripts, detect the path of the directory where the script file exists:
os.path.dirname(__file__))Change directory:
os.chdir("/path/to/Desktop")Make a new directory:
os.mkdir("/path/to/Desktop/my-dir")List all files in a given directory:
os.listdir("/path/to/Desktop")File Operations
Delete a file:
Detect whether a specific file exists:
Constructing Filepaths
Since different operating systems use different slashes, we must standardize filepaths across operating systems. To do this, we use os.path.join in conjunction with commas, to apply the proper slashes depending on the user's operating system.
Since certain filepaths will break if we run the same script from different locations on the command line, we also must ensure our filepaths work no matter which directory we are running the script from. So we use os.path.dirname(__file__) to reference the location of the current Python script, and start to form a relative reference from there.
More filepath construction examples:
Environment Variables
Prerequisite: Environment Variables
Get the entire environment:
Get a specific environment variable (e.g. MY_SECRET_MESSAGE, only after you have set it):
Last updated
Was this helpful?