O exercício proposto diz que a resposta correta é essa, letra D:
class Menu:
catalogo = {}
def adicionar_item(self, item, ingredientes):
self.catalogo[item] = ingredientes
@staticmethod
def ingredientes(item):
return Menu.catalogo[item]
Porém minha pergunta é: Como utiliza uma classe dessa forma? Testei no Pycharm e não deu certo sem a init entre outras coisas faltantes, veja o exemplo de como testei e o erro, como vou criar algum objeto ou passar os valores para usar essa classe dessa forma?
class Menu:
catalogo = {"BB": 123}
def adicionar_item(self, item, ingredientes):
self.catalogo[item] = ingredientes
@staticmethod
def ingredientes(item):
return Menu.catalogo[item]
from menu import Menu
a = Menu("BB", "ITENS_TESTAR_AJUSTE")
a.ingredientes("BB")
Erro:
Traceback (most recent call last):
File "C:\Users\XXXXXXX\PycharmProjects\AluraPython\menu.py", line 12, in <module>
from menu import Menu
File "C:\Users\XXXXXXXX\PycharmProjects\AluraPython\menu.py", line 14, in <module>
a = Menu("BB", "ITENS")
TypeError: Menu() takes no arguments