Open In App

Python | os.getenv() method

Improve
Improve
Like Article
Like
Save
Share
Report

OS module in Python provides functions for interacting with the operating system. OS comes under Python OS env standard utility modules. This module provides a portable way of using operating system-dependent functionality.

os.getenv() method in Python OS env returns the value of the os environment variable key if it exists otherwise returns the default value.

os.getenv() Syntax in Python

Syntax: os.getenv(key, default = None)

Parameters:

  • key: string denoting the name of environment variable default (optional) : string denoting the default value in case key does not exists. If omitted default is set to ‘None’.

Return Type: This method returns a string that denotes the value of the os environment variable key. In case key does not exists it returns the value of default parameter.

Python os.getenv() Method Example

There are various uses example as os.getenv() method. here we are discussing some generally used examples of os.getenv() those are following.

Use of os.getenv() Method

In this example Python script uses the `os` module to retrieve and print the values of two OS environment variables, ‘HOME’ and ‘JAVA_HOME’, using the `os.getenv()` method. The values are assigned to variables and then printed to the console.

Python3




# import os module 
import os
   
# Get the value of 'HOME'
key = 'HOME'
value = os.getenv(key)
   
# Print the value of 'HOME'
# environment variable
print("Value of 'HOME' environment variable :", value) 
   
# Get the value of 'JAVA_HOME'
# environment variable
key = 'JAVA_HOME'
value = os.getenv(key)
   
# Print the value of 'JAVA_HOME'
# environment variable
print("Value of 'JAVA_HOME' environment variable :", value)


Output

Value of 'HOME' environment variable : /home/ihritik
Value of 'JAVA_HOME' environment variable : /opt/jdk-10.0.1

If key does not exist

In this example Python script utilizes the `os` module to retrieve the value of the ‘home’ OS environment variable using the `os.getenv()` method. The obtained value is then printed to the console with a descriptive message.

Python3




# importing os module 
import os
   
# Get the value of 'home'
# environment variable
key = 'home'
value = os.getenv(key)
   
# Print the value of 'home'
# environment variable
print("Value of 'home' environment variable :", value)


Output

Value of 'home' environment variable : None

Explicitly Specifying Default Parameter

In this example Python OS module uses to get the value of the ‘home’ environment variable. It assigns the value to the variable `value` and prints it, defaulting to “value does not exist” if the variable is not present.

Python3




# importing os module 
import os
   
# Get the value of 'home'
# environment variable
key = 'home'
value = os.getenv(key, "value does not exist")
   
# Print the value of 'home'
# environment variable
print("Value of 'home' environment variable :", value)


Output

Value of 'home' environment variable : value does not exist

FAQ’s

1. os.environ.get(‘key’) and os.getenv(‘key’) which one should I use?

Both os.environ.get('key') or environ python and os.getenv('key') can be used to retrieve the value of the environment variable with the key ‘key.’ However, os.getenv('key') is a shorthand and commonly used, while os.environ.get('key') provides a more explicit way and allows for a default value to be specified if the variable is not presen

2. Python os.getenv() return incorrect value on Windows – Is there an alternative?

If os.getenv() is returning incorrect values on Windows, an alternative is to use os.environ.get('key') to retrieve OS environment variables. This method may provide more accurate results on Windows. Additionally, ensure there are no conflicting variables or check if the environment variable is set correctly in the Windows system settings.

3. Python os.getenv() return None when set Windows OS environment variables, Why ?

If `os.getenv()` is returning `None` for Windows environment variables, ensure that the variable is set correctly. Windows environment variables are case-insensitive, so verify the key’s case. Additionally, restart the Python OS env or environment or the system to apply changes, as some modifications might not take effect immediately.



Last Updated : 16 Jan, 2024
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads