Схема Python — тип Dict с несколькими типами значенийPython

Программы на Python
Anonymous
Схема Python — тип Dict с несколькими типами значений

Сообщение Anonymous »

Отказ от ответственности: я очень нуб в Python, поэтому, пожалуйста, наберитесь терпения.

Я даже не уверен, возможно ли это вообще, но мы используем Schematics для проверки данных в Python, и у нас есть список словарей, которые могут иметь значения нескольких типов (например, список строк, список чисел, список словарей и т. д.). Поэтому моей первой попыткой было использовать тип объединения.

Теперь модель выглядит так:

Код: Выделить всё

class Filter(Model):
_id = ObjectIdType(default=ObjectId)
name = StringType()
filters = ListType(DictType(UnionType([ListType(StringType()),
ListType(NumberType()),BooleanType(), StringType()])))
created_at = DateTimeType(default=datetime.datetime.now)
updated_at = DateTimeType(default=datetime.datetime.now)
Но по какой-то неизвестной причине isinstance() выдает мне ошибку, что arg 2 должен быть типом или кортежем типов (что, по моему мнению, означает, что только 2 типа могут быть унифицированы). Так что у меня немного закончились идеи. Я пытался написать собственную модель и использовать ModelType, но и это не зашло слишком далеко.

Заранее спасибо!

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