Operator Module

Advanced PythonFunctional ProgrammingFree Lesson

Advertisement

Introduction

Operator module provides efficient, pure-Python equivalents of many built-in operators.

Arithmetic Operators

from operator import add, sub, mul, truediv, floordiv, pow, mod

print(add(2, 3))        # 5
print(mul(4, 5))        # 20
print(pow(2, 3))        # 8
print(mod(10, 3))       # 1

Comparison Operators

from operator import eq, ne, lt, le, gt, ge

print(eq(5, 5))         # True
print(lt(3, 5))         # True
print(ge(10, 10))       # True

Item and Attribute Operators

from operator import itemgetter, attrgetter, methodcaller

# Item getter
data = [("a", 1), ("b", 2)]
print(sorted(data, key=itemgetter(1)))  # Sort by second element

# Attr getter
class Person:
    def __init__(self, name, age):
        self.name = name
        self.age = age

people = [Person("Bob", 30), Person("Alice", 25)]
print(sorted(people, key=attrgetter("age")))

# Method caller
s = "hello"
upper = methodcaller("upper")
print(upper(s))  # HELLO

Practice Problems

  1. Sort list of tuples with itemgetter
  2. Use attrgetter for object sorting
  3. Replace lambda with operator functions
  4. Create operator-based pipeline
  5. Use methodcaller for string operations

Advertisement

Need Expert Python Help?

Get personalized tutoring, project support, or professional consulting.

Advertisement