tgoop.com/pythonl/5072
Create:
Last Update:
Last Update:
🐍 Необычный Python-совет
В Python можно перегрузить оператор [] и превратить объект в умный словарь или вычисляемый массив. Это позволяет писать очень выразительный код.
Пример: создадим класс, который хранит функцию и вычисляет результат «на лету» при обращении по индексу:
class PowTable:
def __init__(self, power):
self.power = power
def __getitem__(self, n):
return n ** self.power
squares = PowTable(2)
cubes = PowTable(3)
print(squares[5]) # 25
print(cubes[4]) # 64
👉 В итоге obj[x] может не просто доставать значение, а вычислять его динамически.
Это мощный приём для DSL, кэшей и ленивых вычислений.
BY Python/ django
Share with your friend now:
tgoop.com/pythonl/5072