1
resposta

transformar um dicionário com bytecode em um dicionário com strings

Olá.

Tenho o seguinte dicionário:

lista = {
              b"('sp', 'osasco')": b'1234',
              b"('sp', 'embu')": b'6987'
            }

E quero que a mesma fique assim?

lista = {
              ('sp', 'osasco'): '1234', 
              ('sp', 'embu'): '6987'
}

Tentei fazer replace, tentei usar o json.loads() e o decode() ew não funcionou. Por favor, poderiam me ajudar?

1 resposta

Não entendi o objetivo da conversão, mas preto no branco, tu quer isso?

lista = {
    b'("sp", "osasco")': b'1234',
    b'("sp", "embu")': b'6987'
}

lista_convertida = {}
for item in lista:
    lista_convertida[item.decode(encoding='utf-8', errors='strict')] = lista[item].decode(encoding='utf-8', errors='strict')

print(lista_convertida)