Python Keywords and Identifiers
Python Keywords are reserved words with fixed meanings that define Python’s syntax. Cannot be used as names.
Python Identifiers are user-defined names for variables, functions, or classes. Must follow naming rules (no digits at start, only _ allowed).
Keywords in Python
- Predefined and reserved words with special meanings.
- Used to define the syntax and structure of Python code.
- Cannot be used as identifiers, variables, or function names.
- Written in lowercase, except True and False.
- Python 3.11 has 35 keywords.
- The keyword module provides:
- iskeyword() → checks if a string is a keyword.
- kwlist → returns the list of all keywords.
Rules for Keywords in Python
- Python keywords cannot be used as identifiers.
- All the keywords in Python should be in lowercase except True and False.
List of Python Keywords
| Category | Keywords |
|---|---|
Value Keywords | |
| Operator Keywords | and, or, not, is, in |
Control Flow Keywords | if, else, elif, for, while, break, continue, pass, try, except, finally, raise, assert |
| Function and Class | def, return, lambda, yield, class |
| Context Management | with, as |
| Import and Module | import, from |
| Scope and Namespace | global, nonlocal |
| Async Programming | async, await |
Getting List of all Python keywords
We can also get all the keyword names using the below code.
import keyword
print(keyword.kwlist)
Output
['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is',...
Identifiers in Python
- User-defined names for variables, functions, classes, modules, etc.
- Can include letters, digits, and underscores (_).
- Case-sensitive → num, Num, and NUM are different identifiers.
- Python provides str.isidentifier() to check if a string is a valid identifier.
Rules for Naming Python Identifiers
- It cannot be a reserved python keyword.
- It should not contain white space.
- It can be a combination of A-Z, a-z, 0-9, or underscore.
- It should start with an alphabet character or an underscore ( _ ).
- It should not contain any special character other than an underscore ( _ ).
Examples of Python Identifiers
Valid identifiers:
- var1
- _var1
- _1_var
- var_1
Invalid Identifiers
- !var1
- 1var
- 1_var
- var#1
- var 1
Python Keywords and Identifiers Examples
Example 1: Example of and, or, not, True, False keywords.
print("example of True, False, and, or, not keywords")
# compare two operands using and operator
print(True and True)
# compare two operands using or operator
print(True or False)
# use of not operator
print(not False)
Output
example of True, False, and, or, not keywords True True True
Example 2: Example of a break, continue keywords and identifier.
# execute for loop
for i in range(1, 11):
# print the value of i
print(i)
# check the value of i is less than 5
# if i lessthan 5 then continue loop
if i < 5:
continue
# if i greater than 5 then break loop
else:
break
Output
1 2 3 4 5
Example 3: example of for, in, if, elif, and else keywords.
# run for loop
for t in range(1, 5):
# print one of t ==1
if t == 1:
print('One')
# print two if t ==2
elif t == 2:
print('Two')
else:
print('else block execute')
Output
One Two else block execute else block execute
Example 4: Example of def, if, and else keywords.
# define GFG() function using def keyword
def GFG():
i=20
# check i is odd or not
# using if and else keyword
if(i % 2 == 0):
print("given number is even")
else:
print("given number is odd")
# call GFG() function
GFG()
Output
given number is even
Example 5: Example of try, except, raise.
def fun(num):
try:
r = 1.0/num
except:
print('Exception raises')
return
return r
print(fun(10))
print(fun(0))
Output
0.1 Exception raises None
Example 6: Example of a lambda keyword.
# define a anonymous using lambda keyword
# this lambda function increment the value of b
a = lambda b: b+1
# run a for loop
for i in range(1, 6):
print(a(i))
Output
2 3 4 5 6
Example 7: use of return keyword.
# define a function
def fun():
# declare a variable
a = 5
# return the value of a
return a
# call fun method and store
# it's return value in a variable
t = fun()
# print the value of t
print(t)
Output
5
Example 8: use of a del keyword.
# create a list
l = ['a', 'b', 'c', 'd', 'e']
# print list before using del keyword
print(l)
del l[2]
# print list after using del keyword
print(l)
Output
['a', 'b', 'c', 'd', 'e'] ['a', 'b', 'd', 'e']
Example 9: use of global keyword.
# declare a variable
gvar = 10
# create a function
def fun1():
# print the value of gvar
print(gvar)
# declare fun2()
def fun2():
# declare global value gvar
global gvar
gvar = 100
# call fun1()
fun1()
# call fun2()
fun2()
Output
10
Example 10: example of yield keyword.
def Generator():
for i in range(6):
yield i+1
t = Generator()
for i in t:
print(i)
Output
1 2 3 4 5 6
Example 11: Use of assert keyword.
def sumOfMoney(money):
assert len(money) != 0,"List is empty."
return sum(money)
money = []
print("sum of money:",sumOfMoney(money))
Output:
AssertionError: List is empty.Example 12: Use of pass keyword
class GFG:
pass
g = GFG
Example 13: Use of finally keyword
def divide(a, b):
try:
c = a/b
print("Inside try block")
except:
print("Inside Exception block")
finally:
print("Inside finally block")
divide(3,2)
divide(3,0)
Output
Inside try block Inside finally block Inside Exception block Inside finally block
Example 14: Use of import keyword
import math
print("factorial of 5 is :", math.factorial(5))
Output
factorial of 5 is : 120
Example 15: Use of is keyword
x = 10
y = 20
z = x
print(x is z)
print(x is y)
Output
True False
Example 16: Use of from keyword
from math import gcd
print("gcd of 345 and 675 is : ", gcd(345, 675))
Output
gcd of 345 and 675 is : 15
Example 17: Use of async and await keyword
# code
import asyncio
async def factorial(n):
if n == 0:
return 1
return n * await factorial(n - 1)
def main():
result = asyncio.run(factorial(5))
print(result)
if __name__ == "__main__":
main()
Output
120
The async and await keywords make it easy to write asynchronous code in Python. They allow you to write code that runs concurrently with other tasks, which can improve the performance of your programs.
This program defines two functions: factorial() and main(). The factorial() function is an asynchronous function, which means it can run concurrently with other tasks. The await keyword is used to suspend the execution of the factorial() function until it completes. The main() function simply calls the factorial() function and prints the result.