Введите подсказку для объекта пользовательского словаря как TypedDict.Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Введите подсказку для объекта пользовательского словаря как TypedDict.

Сообщение Anonymous »

Можно ли передать значения TypedDict как общие значения внутри класса, чтобы включить подсказку типа?
У меня есть словарь, в котором я хотел бы иметь возможность получите аннотации типов из переданного общего TypeDict внутри __getattr__.
В этом примере. Я хочу получить завершение кода и выделение при использовании точечной записи. Возможно ли это?
from typing import TypedDict

class MyDict[T](dict):
def __init__(self, base_dict: T) -> None:
super().__init__()
self._data = base_dict

def __getattr__(self, item):
dots = item.split(".")
data = self._data
for dot in dots:
data = data.get(dot)
if isinstance(data, dict):
return MyDict(data)
if data is None:
raise ValueError("Key not found")

return data

class TestDef(TypedDict):
foo: int
bar: str
baz: dict[str, bool]

data_dict: TestDef = {
"foo": 10,
"bar": "bar",
"baz": {"qux": True}
}

d = MyDict(data_dict)

v1 = d.foo
print(v1)
v2 = d.baz.qux
print(v2)



Подробнее здесь: https://stackoverflow.com/questions/791 ... -typeddict
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Введите подсказку для объекта пользовательского словаря как TypedDict.
    Anonymous » » в форуме Python
    0 Ответы
    10 Просмотры
    Последнее сообщение Anonymous
  • Введите подсказку для объекта пользовательского словаря как TypedDict.
    Anonymous » » в форуме Python
    0 Ответы
    6 Просмотры
    Последнее сообщение Anonymous
  • Введите подсказку словаря Python, имеющего целые числа в качестве ключей.
    Гость » » в форуме Python
    0 Ответы
    39 Просмотры
    Последнее сообщение Гость
  • Введите подсказку для исчерпывающего словаря с ключами Enum/Literal.
    Гость » » в форуме Python
    0 Ответы
    32 Просмотры
    Последнее сообщение Гость
  • Введите подсказку для исчерпывающего словаря с ключами Enum/Literal.
    Anonymous » » в форуме Python
    0 Ответы
    13 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»