Understanding Keywords in Python
Keywords are the backbone of any programming language. They are reserved words that have a predefined meaning and functionality, and they cannot be used for any other purpose such as variable names or function names. Python, being a versatile and powerful programming language, has a set of keywords that serve various purposes, from control flow to data manipulation. This article will explore the keywords in Python, their functionalities, and how to use them effectively.
List of Python Keywords
As of Python 3.10, the language contains 36 keywords. Here is a list of all the keywords:
False await else import pass
None break except in raise
True class finally is return
and continue for lambda try
as def from nonlocal while
assert del global not with
async elif if or yield
Let’s delve into the functionality of these keywords.
Control Flow Keywords
if
, elif
, and else
These keywords are used for conditional statements, allowing the program to execute certain pieces of code based on specific conditions.
Example:
x = 10
if x > 0:
print("Positive")
elif x == 0:
print("Zero")
else:
print("Negative")
for
and while
These keywords are used for loops, which repeat a block of code multiple times.
Example of for
loop:
for i in range(5):
print(i)
Example of while
loop:
count = 0
while count < 5:
print(count)
count += 1
break
and continue
These keywords control the flow within loops. break
terminates the loop, while continue
skips to the next iteration.
Example:
for i in range(10):
if i == 5:
break
print(i)
for i in range(10):
if i % 2 == 0:
continue
print(i)
pass
A null operation; it is used when a statement is required syntactically but no code needs to be executed.
Example:
for i in range(10):
if i % 2 == 0:
pass
else:
print(i)
Function and Class Definition Keywords
def
Used to define a function.
Example:
def greet(name):
return f"Hello, {name}!"
class
Used to define a class.
Example:
class Dog:
def __init__(self, name):
self.name = name
def bark(self):
return "Woof!"
return
Used inside a function to send the function’s result back to the caller.
Example:
def add(a, b):
return a + b
lambda
Used to create small anonymous functions.
Example:
add = lambda x, y: x + y
print(add(2, 3))
Exception Handling Keywords
try
, except
, finally
, raise
These keywords are used for handling exceptions, providing a way to deal with runtime errors gracefully.
Example:
try:
result = 10 / 0
except ZeroDivisionError:
print("You can't divide by zero!")
finally:
print("This will always be printed.")
Variable Scope Keywords
global
and nonlocal
These keywords are used to declare variables that can be accessed globally or to access variables in the nearest enclosing scope that is not global.
Example of global
:
x = 10
def modify_global():
global x
x = 5
modify_global()
print(x)
Example of nonlocal
:
def outer():
x = "local"
def inner():
nonlocal x
x = "nonlocal"
print("inner:", x)
inner()
print("outer:", x)
outer()
Asynchronous Programming Keywords
async
and await
These keywords are used to write asynchronous code, which can handle concurrent operations more efficiently.
Example:
import asyncio
async def say_hello():
print("Hello")
await asyncio.sleep(1)
print("World")
asyncio.run(say_hello())
Logical and Comparison Keywords
and
, or
, not
, is
, in
These keywords are used for logical operations and comparisons.
Example:
a = True
b = False
print(a and b) # False
print(a or b) # True
print(not a) # False
print(a is b) # False
print(a is not b) # True
nums = [1, 2, 3]
print(2 in nums) # True
print(4 not in nums) # True
Miscellaneous Keywords
assert
Used for debugging purposes, it tests if a condition is true. If not, it raises an AssertionError.
Example:
x = 5
assert x > 0, "x should be positive"
with
Used to wrap the execution of a block of code within methods defined by a context manager. It ensures that resources are properly managed.
Example:
with open('file.txt', 'r') as file:
content = file.read()
del
Used to delete objects.
Example:
x = 10
del x