Ir ao conteúdo

Posts recomendados

Postado

Seguinte:

Criando um dicionário para pesquisa, consegui o seguinte resultado:

 

{"{'Fulano'": " '123456789'}"}

 

Eu gostaria de saber se há algum comando de strings que me permita excluir aqueles chaves.

Postado
2 horas atrás, JALuza disse:

Seguinte:

Criando um dicionário para pesquisa, consegui o seguinte resultado:

 

{"{'Fulano'": " '123456789'}"}

 

Eu gostaria de saber se há algum comando de strings que me permita excluir aqueles chaves.

 

O teu dicionário se for exatamente como está montado ai no exemplo, ele está bagunçado, pois a chave dele é: {'Fulano' , e o valor é '123456789'}

 

O Correto com aspas simples seria assim: {'Fulano': '123456789'} ou se usar aspas duplas {"Fulano": "123456789"}

 

Um dicionário é representados na forma de chave e valor, onde a chave é usada para referenciar um determinado valor e no seu caso sua estrutura está fora do padrão.

 

Não sei como voce está gerando esse valor, mas tem que consertar ele, está errado e quando você conseguir consertar isso você vai poder extrair corretamente os dados e de diversas formas.

 

dicionario = {'Fulano':'123456789','Sicrano':'1011121314','Beltrano':'15161718'}

lista = dicionario.items() # te retorna uma dict_items que é também um iterável.

#exemplo1
# partindo desse iterável [lista], voce escolhe o que fazer e como extrair os dados.
for a,b in lista:
    print(a,b) 

    
#exemplo2
# ou colocar em lista sem as chaves
nova_lista = []
for a,b in lista:
    nova_lista.append(f'{a}={b}') # estou formatando a string para ser chave = valor dentro da lista.
print(nova_lista)


# Com essa nova_lista voce pode associar pelo índice da lista e buscar um só valor e atribuir a uma
# variável, ou vários valores a várias variáveis

#exemplo3
indice0 = nova_lista[0]
print(indice0.replace('=','/')) # posso remover ou trocar o que estiver dentro da string por qualquer coisa 
print(indice0.replace('=',' ')) # troco por espaço entre os valores.


#exemplo4
# Posso ainda dividir toda ela em caracteres individuais para dentro de uma lista
print(list(indice0))

image.png.f88ee070835c9dbb7c0105659d67ec8f.png

 

 

Agora se o teu problema é apenas as chaves { }, tem uma gambiarra horrível de se fazer, mas que remove somente as chaves e que você poderá extender isso para remover os acentos únicos(') e duplos(''). Mas são coisas que vão completamente na contramão dos padrões de programação, no entanto se é possível de fazer um mosntro, eis que te apresento um monstro que não se pode falar que é um código:

😝 acho que foi a pior coisa que já demonstrei com o Python, nem sei porque ele faz isso!

ou pior porque fui fazer isso!😔

gambiarra = str({"{'Fulano'": " '123456789'}"}) # Converte isso para string com o str.

gambiarra = gambiarra.replace('{', '')# tira os {
gambiarra = gambiarra.replace('}', '')# tira os }
gambiarra = gambiarra.replace('"', '')# tira os "
gambiarra = gambiarra.replace("'", '') # tira os '
gambiarra = gambiarra.replace(':', '') # tira os :

print(gambiarra)

O resultado na tela:

image.png.4e91e452b17cbc746e20f74d3d8d6ab9.png

 

Tô aqui torcendo para você não usar essa opção suja e optar por corrigir seu dicionário e poder aplicar as formas pythônicas de codigo que mostrei no começo!

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!