PYTHONL Telegram 5072
This media is not supported in your browser
VIEW IN TELEGRAM
🐍 Необычный 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, кэшей и ленивых вычислений.
24🔥11👍9😱6



tgoop.com/pythonl/5072
Create:
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

View MORE
Open in Telegram


Telegram News

Date: |

6How to manage your Telegram channel? Activate up to 20 bots “[The defendant] could not shift his criminal liability,” Hui said. How to Create a Private or Public Channel on Telegram? In handing down the sentence yesterday, deputy judge Peter Hui Shiu-keung of the district court said that even if Ng did not post the messages, he cannot shirk responsibility as the owner and administrator of such a big group for allowing these messages that incite illegal behaviors to exist.
from us


Telegram Python/ django
FROM American