Python Keywords

Explore the essential Python keywords: a comprehensive guide to understanding and effectively using reserved words in Python programming for optimized coding.

Every language contains words and a set of rules that would make a sentence meaningful. Similarly, in Python programming language, there are a set of predefined words, called Keywords which, along with Identifiers, will form meaningful sentences when used together.Python keywords cannot be used as the names ofvariables, functions, andclasses.

In this article, we will learn about Python keywords and how to use them to perform tasks.

What are Keywords

Keywords in Python are the fundamental building blocks of the language, serving as predefined, reserved words with special syntactic significance. These words cannot be used as identifiers, like variable or function names, as they convey specific instructions to the Python interpreter. Understanding these keywords is essential for any programmer, as they form the foundation of Python's structure and syntax. Their role is pivotal in controlling the flow of a Python program, facilitating operations like looping, decision-making, and defining functions or classes.

List of Keywords in Python

The List of Keywords in Python includes a variety of reserved words, each serving a specific purpose:

  • if, else, elif: These are conditional statements used in the code for decision-making.
  • while, for: Loop keywords that enable iteration over a sequence of elements.
  • break, continue: Control the flow within loops; 'break' exits the loop, while 'continue' skips to the next iteration.
  • return: Used in functions to return a value and exit the function.
  • yield: Utilized in generator functions; returns a generator object.
  • def: Defines a function.
  • class: Used for creating new classes.
  • pass: A placeholder that does nothing, often used for defining minimal classes or functions.
  • import, from, as: These keywords manage the importation of modules and renaming them for convenience.
  • del: Deletes objects.
  • global, nonlocal: Manage variable scope - 'global' for variables defined outside any function, 'nonlocal' for variables in nested functions.
  • True, False, None: Represent boolean true and false values and the null object, respectively.
  • try, except, finally, raise: Handle exceptions - 'try' block tests a block of code for errors, 'except' block handles the error, 'finally' executes code regardless of the result, and 'raise' triggers an exception manually.
  • with: Simplifies exception handling by encapsulating standard preparation and cleanup tasks in context managers.

Each keyword is integral to Python's syntax and functionality, enabling programmers to write clear and logically structured code.

How to Identify Python Keywords?

To identify Python keywords, various methods can be employed, each providing a reliable way to distinguish these reserved words:

  • Use the keyword Module: Python includes a module named keyword. By executing import keyword; keyword.kwlist in Python, you get a list of all current keywords. For instance, this list includes words like if, else, class, and def.
  • Interactive Help Function: In Python's interactive shell, the help() function can be utilized. Typing help("keywords") in the shell displays a list of Python's reserved keywords, such as for, while, break, and return.
  • Syntax Highlighting in IDEs: Integrated Development Environments (IDEs) like PyCharm or Visual Studio Code automatically highlight keywords. These are typically shown in a different color, making them stand out. For example, try, except, finally, and raise are highlighted distinctly.
  • Online Python Documentation: The official Python documentation on the Python website provides an updated list of keywords. It's a reliable resource for the most current keywords, including import, from, as, and lambda.

Each of these methods allows for easy identification of Python keywords, which are fundamental in writing syntactically correct Python code.

Python Keywords and their Usage

Python keywords and their usage play a crucial role in the structure and syntax of Python programming:

def: Defines a function. Example:

def greet(name): 
	return "Hello " + name

return: Exits a function and returns a value. Example:

def sum(a, b): 
	return a + b

if, elif, else: Conditional statements used for decision-making. Example:

if x > 10: 
elif x == 10: 
	print("Equal") else: print("Lesser")

for, while: Loop constructs. for loops over a sequence, while continues as long as a condition is true. Example:

for i in range(5): 

while x < 5: 
	x += 1

break, continue: Control flow statements within loops. break exits the loop, continue skips to the next iteration. Example:

for x in range(10): 
	if x == 5: break 
	if x == 3: continue

try, except, finally: Handles exceptions. try tests a block of code for errors, except handles the error, finally executes code regardless of the result. Example:

	x = 1 / 0 
except ZeroDivisionError: 
	print("Attempted Division")

import, from: Import modules or specific elements from a module. Example:

import math
from sys import argv

class: Defines a class. Example:

class Myclass: 
	def __init__(self, name): = name

global, nonlocal: Declare global and nonlocal variables. global for variables defined outside any function, nonlocal for variables in a nested function. Example: global x or in a function nonlocal y

global x
nonlocal y

Getting the List of all Python Keywords

Getting the List of Keywords in Python can be achieved by using the keyword module. This module is a standard utility in Python that provides access to the current list of reserved keywords. To retrieve this list, one must first import the global keyword. module and then use the keyword.kwlist attribute. Here is a simple example of how to do this:

import keyword

# Retrieve the list of keywords
keywords = keyword.kwlist

# Print the list of keywords

This code will output all the reserved keywords in Python, which is essential in understanding the language's syntax and structure while keyword using. The keyword.kwlist returns a sorted list of Python's reserved words, providing a convenient reference for programmers.

The output for the following code will be:

['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 
'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 
'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']

True, False, None Keyword in Python

The True, False, and None keywords in Python hold special significance and are used frequently in various contexts:

True: This keyword represents the boolean value for "true". It is often used in conditional statements and logical operations. For instance, if condition is True: would execute the indented code block only if condition evaluates to true.


is_valid = True 
if is_valid: 
	print("This is true")

False: This keyword signifies the boolean value for "false". It's commonly used in control flow and conditions to represent a negative or false state.


is_valid = False
if not is_valid:
    print("This is false")

None: This keyword represents the absence of a value or a null value. It's often utilised in function definitions to indicate that no specific value is returned or in variable initialisation to signify that the variable currently has no value.


result = None
if result is None:
    print("No result available")

Each of these keywords plays a crucial role in Python programming, creating clear and logical code by representing fundamental concepts like truth, falsehood, and the absence of a value.

and, or, not, in, is Keyword in Python

The "and, or, not, in, is" keywords in Python are fundamental for logical and comparative operations within the language:

and: This keyword is used for logical AND operations. It returns True if both operands are true. It's typically used in conditional statements to check multiple conditions.


if a > 10 and b < 5:
    print("Both conditions are true")

or: This keyword performs a logical OR operation. It returns True if at least one of the operands is true. Useful for checking multiple conditions where only one needs to be true.


if a > 10 or b < 5:
    print("At least one condition is true")

not: This keyword inverts the boolean value of its operand. It's used to reverse the logical state of its operand's condition.


if not a > 10:
    print("a is not greater than 10")

in: This keyword checks if a value exists within an iterable, like a list or string. It returns True if the value is found.


if 'apple' in fruits:
    print("Apple is in the list of fruits")

is: This keyword checks if two variables point to the same object in memory, which is different from the '==' operator that checks if the values are equal.


if a is None:
    print("a is None")

These keywords are integral to Python's syntax, allowing for more readable and efficient conditional and logical expressions. They are essential tools in the Python programmer's toolkit for controlling the flow and comparison of data.

for, while, break, continue Keywords in Python

The "for, while, break, continue" keywords in Python are essential for controlling the flow of loops:

for: This keyword is used to iterate over a sequence (like a list, tuple, string, or range). It's commonly used for looping through elements directly.


for item in [1, 2, 3]:

while: This keyword allows execution of a set of statements as long as a condition is true. It's typically used when the number of iterations is not predetermined.


count = 0
while count < 3:
    count += 1

break: Used within loops to terminate the loop immediately, regardless of the iteration condition.


for item in [1, 2, 3, 4, 5]:
    if item == 3:

continue: Skips the current iteration of the loop and proceeds to the next iteration without exiting the loop.


for item in [1, 2, 3, 4, 5]:
    if item == 3:

These keywords provide robust control over loop execution, enabling Python programmers to create efficient and optimised loops tailored to specific needs and conditions.

Conditional keywords in Python- if, else, elif

The conditional keywords in Python - "if, else, elif" - play a crucial role in decision-making processes within the code:

if: This keyword executes a code block only if a specified condition is true. It forms the basis of conditional execution in Python.


if temperature > 30:
    print("It's a hot day")

else: Used in conjunction with if. The else block is executed if the if condition is false. It provides an alternative path of execution.


if temperature > 30:
    print("It's a hot day")
    print("It's not a hot day")

elif (short for else if): This keyword is used for multiple conditions in a sequence. It checks another condition if the previous conditions were false.


if temperature > 30:
    print("It's a hot day")
elif temperature > 20:
    print("It's a nice day")
    print("It's neither hot nor nice")

These keywords are fundamental in Python for creating conditional statements, enabling the code to respond differently depending on various inputs or internal states of global variable. They are vital to adding logical decision-making capabilities to a Python program.

Structure Keywords in Python: def, class, with, as, pass, lambda

The structure keywords in Python: def, class, with, as, pass, and lambda, are fundamental in defining the architecture of a Python program:

def: Used for defining a function. It marks the start of the function header followed by the function name and parameters.


def greet(name):
    print(f"Hello, {name}")

class: Essential for defining a class in object-oriented programming. It creates a new user-defined data structure with methods and properties.


class Car:
    def drive(self):
        print("The car is moving")

with: Simplifies exception handling by encapsulating common setup and cleanup tasks in a block. It's often used with file operations.


with open('file.txt', 'r') as file:
    contents =

as: Used in combination with with to rename an object for the duration of the block or with import to rename a module being imported.


import math as m

pass: Acts as a placeholder. It allows for the creation of minimal classes or functions, primarily used where the code will eventually go but has not been written yet.


def unimplemented_function():

lambda: Used to create small anonymous functions (functions without a name). These are single-expression functions that return a value.


multiply = lambda x, y: x * y
print(multiply(2, 3))

Each of these keywords contributes to the structural elements of Python, allowing for the creation of functions, classes, and the management of resources, among other functionalities. They are integral to Python's capability to structure code efficiently and elegantly.

Return Keywords in Python- Return, Yield

The return keywords in Python - return and the yield keyword - are crucial for handling the output of functions:

return: This keyword is used to exit a function and return a value. When a return statement is executed, the function terminates and optionally passes back an expression to the caller.


def add(a, b):
    return a + b
result = add(5, 3)
print(result)  # Outputs: 8

yield: Used in generator functions, yield returns a value and pauses the function's execution, preserving its state. When the generator is called again, it resumes from where it left off.


def countdown(n):
    while n > 0:
        yield n
        n -= 1
for number in countdown(3):
    print(number)  # Outputs: 3, 2, 1

These keywords are fundamental for controlling the return values of functions in Python. While return is used for general functions to return results immediately, yield is used in generators to an asynchronous function to produce a sequence of values over time, making it efficient for large datasets or streaming data.

Import, From Keywords in Python

The "Import" and "From" keywords in Python are essential for including external modules and their components in the current program:

import: This keyword is used to import entire modules into a Python script, making the functions, classes, and variables defined in those modules available.


import math
print(math.sqrt(4))  # Outputs: 2.0

from: Often used in combination with import, this keyword allows specific attributes (functions, classes, variables) from a module to be imported rather than the entire module. This can improve readability and performance.


from datetime import datetime
print(  # Outputs the current date and time

These keywords enable Python programs to leverage various functionalities from external libraries and modules, enhancing reusability and reducing code redundancy. They are fundamental for extending the capabilities of Python scripts with pre-built and community-driven modules.

Exception Handling Keywords in Python – try, except, raise, finally, and assert

The Exception Handling Keywords in Python – try, except, raise, finally, and assert – are instrumental in managing and responding to errors in a program:

try: This keyword begins a block of code that might raise an exception. It's used to test a block of code for errors.


    result = 10 / 0

except: Used to handle the error raised by the try block. It can catch specific exceptions or all exceptions, allowing the program to continue.


    result = 10 / 0
except ZeroDivisionError:
    print("Divided by zero!")

raise: Enables the manual triggering of an exception. It's used to raise a specific exception with a custom error message.


if x < 0:
    raise ValueError("x cannot be negative")

finally: This keyword creates a block of code that will be executed no matter if there is an exception or not. It's often used for clean-up actions.


    file = open("example.txt")
    content =

assert: Used for debugging purposes, it tests a condition, and if the condition is false, it raises an AssertionError with an optional message.


assert x > 0, "x should be positive"

These keywords form the backbone of error handling in Python, providing a structured way to detect and respond to exceptions, ensuring the robustness and reliability of Python programs.

del Keyword in Python

The del keyword in Python is used for deleting objects:

  • Purpose: del removes references to an object, which can be a variable, a list element, a slice from a list, or an entire list. It's used to free up space or remove an element from a data structure.
  • Functioning: When del is used on an object, the reference from the name to the object is deleted, not the object itself. If no other references to the object exist, it is garbage collected.
  • Usage in Lists and Dictionaries: del can remove individual items from lists or dictionaries, or even delete the entire list or dictionary.
  • Usage with Variables: When used on a variable, it deletes the variable, making it undefined.


# Deleting a variable
x = 10
del x

# Deleting an item from a list
numbers = [1, 2, 3, 4, 5]
del numbers[2]  # Removes the item at index 2

# Deleting a slice from a list
del numbers[1:3]  # Removes items from index 1 to 2

# Deleting an entire list
del numbers

Python's del keyword is essential for managing memory and data structures, allowing programmers to explicitly control what elements or variables are removed from their environment.

Global, Nonlocal in Keywords Python

The global and nonlocal keywords in Python are used to manage the scope of variables:

global: This keyword is used to declare a variable as global. If a variable is declared as global, it means that its scope extends beyond the current function - it can be read and modified in the global scope.


x = 5

def modify():
    global x
    x = 10

print(x)  # Outputs: 10

nonlocal: Used to declare a variable as nonlocal, this keyword indicates that the variable is not local to the function in which it's declared, but it isn't global either. It's typically used in nested functions to modify a variable defined in an outer function.


def outer_function():
    x = 5

    def inner_function():
        nonlocal x
        x = 10

    print(x)  # Outputs: 10


These keywords are crucial in Python for modifying variables outside the current scope, particularly in nested functions (nonlocal) and throughout the context manager and entire program (global). They allow altering variables in different scopes without causing unintended side effects.


In conclusion, understanding and leveraging keywords in Python is paramount for effective programming. These reserved words play a pivotal role in defining the syntax and structure of the language, influencing the behaviour of functions, classes, and control flow.

By delving into the nuances of Python keywords, developers gain the ability to unlock the full potential of the language, ensuring efficient code execution and streamlined program logic and recognising the significance of keywords like 'if,' 'else,' and 'for' enables programmers to construct robust and readable code that aligns seamlessly with Python's syntax.

Furthermore, a comprehensive grasp of Python keywords empowers developers to navigate complex projects easily, enhancing code comprehension and facilitating collaboration within development teams. This proficiency in python keyword utilisation ultimately contributes to creating scalable, maintainable, and high-performance Python applications.

Python keywords serve as the building blocks of code, shaping the language's foundation. Mastery of these elements is a prerequisite for any developer aiming to harness Python's versatility and power. As we conclude our exploration of Python keywords, it becomes evident that they are not mere language components but rather the keystones that define the landscape of Python programming.

You can also check these blogs:

  1. Bisection Method In Python
  2. Python ** Meaning - Double Star Operator in Python
  3. How to Print to stderr and stdout in Python?
  4. Exploratory Data Analysis on Iris Dataset in Python
  5. Expressions in Python
  6. Converting DateTime to UNIX Timestamp in Python
  7. How to Check if a String is an Integer in Python?
  8. Python Pipeline Operator
  9. How to Print Object Attributes in Python?
  10. How to Clamp Floating Numbers in Python?