import locale
import platform
try:
if platform.system() == 'Windows':
locale.setlocale(locale.LC_ALL, 'Portuguese_Brazil.1252')
else:
locale.setlocale(locale.LC_ALL, 'pt_BR.UTF-8')
except locale.Error:
print("Erro: locale não suportado no sistema, usando a configuração regional padrão do sistema")
locale.setlocale(locale.LC_ALL, '')
vendas = {
"Eletrônicos": [
{"produto": "Smartphone", "quantidade": 5, "valor_unitario": 2000},
{"produto": "Tablet", "quantidade": 3, "valor_unitario": 1500}
],
"Eletrodomésticos": [
{"produto": "Geladeira", "quantidade": 2, "valor_unitario": 3000},
{"produto": "Micro-ondas", "quantidade": 4, "valor_unitario": 800}
],
"Livros": [
{"produto": "Livro A", "quantidade": 10, "valor_unitario": 50},
{"produto": "Livro B", "quantidade": 5, "valor_unitario": 100}
]
}
def calcular_total_categoria(lista_vendas: list[dict]) -> int:
total = 0
for venda in lista_vendas:
total += venda["quantidade"] * venda["valor_unitario"]
return total
def exibir_totais_por_categoria(vendas: dict) -> None:
for categoria, lista_vendas in vendas.items():
total = calcular_total_categoria(lista_vendas)
valor_formatado = locale.currency(total, grouping=True)
print(f'- {categoria}: {valor_formatado}\n')
def main():
print('Total de vendas por categoria:\n')
exibir_totais_por_categoria(vendas)
if __name__ == '__main__':
main()