Я пытаюсь использовать collections.namedtuple
для преобразования словаря в объект python.Внутренний класс с namedtuple()
import Zabbix
class Foo:
def bar(self):
collections.namedtuple('Zabbix.Request',['b','c'])
что приводит к
ValueError: Type names and field names must be valid identifiers: 'Zabbix.Request'
Мой простое исправление было просто расширить внутренний класс внутри Foo
import Zabbix
class Foo:
class Request(Zabbix.Request):
pass
def bar(self):
collections.namedtuple('Request',['b','c'])
Есть ли лучший способ? В настоящее время используется python 3.4
Что именно вы пытаетесь сделать здесь? Ничего из этого не имеет никакого смысла. – tzaman
Ваш метод 'bar' не возвращает namedtuple, поэтому он ничего не делает. Чего вы пытаетесь достичь, поставив «Zabbix.Request» в качестве имени namedtuple? – BrenBarn